zoukankan      html  css  js  c++  java
  • 调用JavaScript

    webdriver 提供了 execute_script() 接口用来调用 js 代码。

    一、通过 JavaScript 来隐藏页面上的元素

    1、新建html文件,复制粘贴以下代码

     1 <html>
     2     <head>
     3         <meta http-equiv="content-type" content="text/html;charset=utf-8" />
     4         <title>js</title>
     5         <script type="text/javascript" async=""
     6 src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
     7         <link href="http://netdna.bootstrapcdn.com/twitter-bootstrap/2.3.2/css/bootstrap-combined.min.css"
     8 rel="stylesheet" />
     9         <script type="text/javascript">
    10 $(document).ready(function(){
    11 $('#tooltip').tooltip({"placement": "right"});
    12 });
    13         </script>
    14     </head>
    15     <body>
    16         <h3>js</h3>
    17         <div class="row-fluid">
    18             <div class="span6 well">
    19                 <a id="tooltip" href="#" data-toggle="tooltip" title=" selenium-webdriver(python)">hover to see
    20 tooltip</a>
    21                 <a class="btn">Button</a>
    22             </div>
    23         </div>
    24     </body>
    25 <script src="http://netdna.bootstrapcdn.com/twitter-bootstrap/2.3.2/js/bootstrap.min.js"></script>
    26 </html>

    2、脚本实现隐藏页面元素

     1 #coding=utf-8
     2 
     3 '''
     4 execute_script(script, *args)在当前窗口/框架 同步执行 javaScript
     5     script:JavaScript 的执行。
     6     *args:适用任何 JavaScript 脚本。
     7 '''
     8 from selenium import webdriver
     9 import time,os
    10 
    11 driver = webdriver.Firefox()
    12 file_path = 'file:///' + os.path.abspath('js.html')
    13 driver.get(file_path)
    14 
    15 
    16 
    17 #######通过 JS 隐藏选中的元素##########第一种方法:
    18 #隐藏文字信息
    19 driver.execute_script('$("#tooltip").fadeOut();')
    20 time.sleep(5)
    21 
    22 
    23 #隐藏按钮:
    24 button = driver.find_element_by_class_name('btn')
    25 driver.execute_script('$(arguments[0]).fadeOut()',button)
    26 time.sleep(5)
    27 driver.quit()
  • 相关阅读:
    time 模块学习
    day 14 自定义模块,常用模块 time .datetime ,time 模块
    day 13 课后作业
    day 12 课后作业
    day 11课后作业
    树状数组最值
    hdu 1059 Dividing bitset 多重背包
    XVII Open Cup named after E.V. Pankratiev. XXI Ural Championship
    最长公共子序列板/滚动 N^2
    Uva 10635
  • 原文地址:https://www.cnblogs.com/huiguniang/p/7112311.html
Copyright © 2011-2022 走看看