• selenium使用一 页面导航


    一 、基本操作

      运行代码如下代码后,就会发现 Chrome地址栏的下方,正在受到自动测试软件的控制

    from  selenium  import  webdriver
    #启动谷歌浏览
    driver = webdriver.Chorm()
    #打开百度页面 #driver.get(url)
    driver.get("www.baidu.com")
    #设置页面大小 第一个参数值设置的是浏览器的长,第二个参数值设置的是浏览器的 宽:
    driver.set_window_size(1200.1500)
    #页面最大化
    driver.maximize_window(

    其他基本命令:

    #前进 
    driver.back() 
    #后退
    driver.forward() 
    #刷新 
    driver.refresh() 
    #退出 
    driver.quit() 

    二、元素定位:
     共有八种方式  

     find_element_by_id()   
     find_element_by_name() 
     find_element_by_class_name() 
     find_element_by_tag_name() 
     find_element_by_link_text() 
     find_element_by_partial_link_text() 
     find_element_by_xpath() 
     find_element_by_css_selector() 

    1、根据ID 定位

    HTML 属性的 ID 是很重要的,带有特定 ID 值的 HTML 元素可以被 CSS,样式选择器和 JavaScript 脚本查找 到,并执行某种特定的功能. 一般为了便于区分在 HTML 页面中我们是不会设置 ID 相同的 HTML 元素。

    ID 选择器具有唯一性,虽然重复的 ID 对 应的 CSS 样式都会生效,如果用 JavaScript 去获取相应 ID 的元素时,会出错,因为取 ID 只能一个。

    以百度搜索为例子,来一下如何找到程序的 ID。 这里是百度的搜索框的代码: <input type="text" class="s_ipt" name="wd" id="kw" maxlength="100" autocomplete="off"> 重点在这里,ID=”kw”,通过这里知道了,百度搜索框的 ID 为 kw,就可以找到这个 ID 了。 再得到搜索确认按钮的 ID: <input type="submit" value="百度一下" id="su" class="btn self-btn bg s_btn"> 通过上面这段代码可以看到,ID=”su”

    #coding:utf-8
    #导入库 
    from selenium import webdriver import time 
    improt time
    #打开浏览器和打开百度 
    driver=webdriver.Chrome() driver.get("https://www.baIDu.com/") 
    #通过 ID 查找,然后输入,并点击 
    driver.find_element_by_id("kw").send_keys("selenium") driver.find_element_by_id("su").click() 
    #等待3秒
    time.sleep()
    #退出浏览器 
    driver.quit()

    2. 根据name定位

    与id 类似

    3. 根据Xpath  定位

    打开浏览器的开发者工具,然后将其定位到搜索框 上, 这时候,我们下方开发者工具应该已经定位到相应的代码上,我们选中这行代码 (如果你的开发者工具的代码框被遮住的话,那么你可以通过上下滑动来适当的展
    开,或者关掉弹出的 Console 和 What’s New),然后右键点击,选中 copy,这时候在 弹出的二级选择框中,点击位于最下方的 Copy XPath,我们就可以获取到由机器生成

     。。。其他类似 不再赘述

  • 相关阅读:
    [LeetCode#114]Flatten Binary Tree to Linked List
    [LeetCode#103]Binary Tree Zigzag Level Order Traversal
    [LeetCode#102]Binary Tree Level Order Traversal
    [LeetCode#145]Binary Tree Postorder Traversal
    [LeetCode#]Binary Tree Preorder Traversal
    [LeetCode#144]Binary Tree Preorder Traversal
    [LeetCode#94]Binary Tree Inorder Traversal
    [LeetCode#101]Symmetric Tree
    [LeetCode#100]Same Tree
    [LeetCode#104, 111]Maximum Depth of Binary Tree, Minimum Depth of Binary Tree
  • 原文地址:https://www.cnblogs.com/try-chi/p/11832160.html
Copyright © 2020-2023  润新知