python_selenium
来源:互联网 发布:脚本王者荣耀软件 编辑:程序博客网 时间:2024/05/29 18:14
本文内容均来自51自学网整理,如果侵权请联系我
案例:
- 启动火狐浏览器,
- 首先打开我要自学网页面,打印网页标题,等待3秒
- 打开百度首页,打印网页标题,再等待2秒
- 关闭浏览器。
from selenium import webdriverfrom time import sleep#选择使用的浏览器driver = webdriver.Firefox()#打开的网页driver.get("http://www.baidu.com")#打印网页标题print(driver.title)sleep(3)#打开另一个网页driver.get("http://www.51zxw.net")print(driver.title)sleep(2)#关闭driver.quit()
浏览器操作
- 浏览器窗口大小设置
- 页面前进后退
- 页面刷新
from selenium import webdriverfrom time import sleepdriver=webdriver.Chrome()driver.get("http://www.51zxw.net/show.aspx?id=60544&cid=615")print(driver.page_source)#窗口最大化driver.maximize_window()sleep(2)driver.get("http://www.baidu.com")#调整窗口尺寸driver.set_window_size(800,400)#刷新页面driver.refresh()#返回后退driver.back()sleep(2)#前进driver.forward()
元素定位
元素的定位应该是自动化测试的核心,要想操作一个元素,首先应该识别这个元素。
webdriver提供了一系列的元素定位方法,常用的有以下几种
- id
- name
- class name
- link text
- partial link text
- tag name
- xpath
- css selector
案例:打开百度首页,在搜索框自动输入“Selenium我要自学网”关键词,然后点击搜索按钮,查看搜索页面。
from selenium import webdriverfrom time import sleepdriver = webdriver.Chrome()driver.get("http://www.baidu.com")#根据name 属性 输入查找的问题driver.find_element_by_name("wd").send_keys("selenium 我要自学网")sleep(2)#点击搜索属性driver.find_element_by_id('su').click()
tag_name定位
from selenium import webdriverdriver = webdriver.Chrome()driver.get("http://www.51zxw.net/show.aspx?id=60546&cid=615")#找到所有标签inputs = driver.find_elements_by_tag_name("input")#取出第一个input 标签赋值seleniuminputs[0].send_keys("selenium")class_name定位
from selenium import webdriverdriver = webdriver.Chrome()driver.get("http://www.baidu.com")#根据class 名字定位driver.find_element_by_class_name("s_ipt").send_keys("selenium")driver.find_element_by_id("su").click()
link_text定位
link_text定位就是根据超链接文字进行定位。
from selenium import webdriverfrom time import sleepdriver =webdriver.Chrome()driver.get("http://www.51zxw.net/")sleep(3)#根据超链接文本查询driver.find_element_by_link_text("程序开发").click()sleep(3)#跟局超链接文本部分内容查询driver.find_element_by_partial_link_text("神秘面纱").click()
XPath定位
XPath即为XML路径语言,它是一种用来确定XML文档中某部分位置的语言。XPath基于XML的树状结构,提供在数据结构树中找寻节点的能力。
xpath绝对与相对定位from selenium import webdriverfrom time import sleepdriver =bdriver.Chrome()driver.get("http://www.baidu.com")# 绝对路径定位driver.find_element_by_xpath("/html/body/div[2]/div[1]/div/div[1]/div/form/span[1]/input").send_keys("selenium")#根据input 标签中的ID定位driver.find_element_by_xpath("//input[@id='kw']").send_keys("第二次")#根据name 标签中的ID定位driver.find_element_by_xpath("//input[@name='wd']").send_keys("第三次")#所有标签中 属性为s_ipt的calssdriver.find_element_by_xpath("//*[@class='s_ipt']").send_keys("第四次")
xpath深入定位
from selenium import webdriverfrom time import sleepdriver=webdriver.Firefox()driver.get("http://www.51zxw.net")#层级和属性结合定位--自学网首页输入用户和名密码driver.find_element_by_xpath("//form[@id='loginForm']/ul/input[1]").send_keys("51zxw")driver.find_element_by_xpath("//form[@id='loginForm']/ul/input[2]").send_keys("66666")#逻辑运算组合定位driver.find_element_by_xpath("//input[@type='text' and @name='username']").send_keys("51zxw")sleep(3)driver.quit()
阅读全文
0 0
- python_selenium
- python_selenium(二)
- python_selenium(sn)
- python_selenium(五)
- python_selenium笔记
- python_selenium(三)
- python_selenium单元测试+自动生成测试结果
- 使用python_selenium爬取动态网页时要注意的问题
- Oracle之异常/存储过程/函数/触发器
- 鹿晗代言的联想小新Air Pro还有这种恢复功能,你找到了没?
- 对 PInvoke 函数的调用导致堆栈不对称问题
- iOS 国际化如何指定默认语言
- Android LBS
- python_selenium
- angularjs下ng-repeat点击元素改变样式实现
- 单机版本的matlab 远程桌面登录会报错的”License checkout failed...Error 103“
- C#写一般处理程序遇到的一个String和int转换的问题
- 51nod 1572 宝岛地图(思维)
- 文章标题 ThinkPHP3.2.2-搜索分页
- getElementsByName返回值为Object
- linux下安装并配置redis 修改默认端口号,防止入侵
- 给定两个字符串,请设计一个方法来判定其中一个字符串是否为另一个字符串的置换(容易)