没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
一、seleniul介绍
1.什么是selenium?
1.Selenium 是最广泛使用的开源 Web UI(用户界面)自动化测试套件之一。Selenium 支持的语言包
括C#,Java,Perl,PHP,Python 和 Ruby。
2.selenium 测试直接运行在浏览器中,就像真正的用户在操作一样。
3.selenium也是支持无界面浏览器操作的
2.为什么使用selenium?
模拟浏览器功能,自动执行网页中的js代码,实现动态加载
3.如何安装selenium?
4.selenium的使用步骤?
二、元素定位
1.ID定位
通过页面内元素的ID属性进行定位,前提是这个元素有ID属性
在终端下使用pip install selenium
1.导包
from selenium import webdriver
from selenium.webdriver.common.by import By
import time
2.调用谷歌驱动
driver = webdriver.Chrome()
3.打开web页面
url = "http://www.ibiqu.org/register.php"
driver.get(url)
4.停留时间
time.sleep(10)
5.退出驱动
driver.quit()
#html
<input type="text" name="enroll" id="user">
<input type="button" name="btn" id="btn" value="确定">
#python
driver.find_element(By.ID,'user').send_keys('xxxx')
#send_keys()表示输入
driver.find_element(By.ID,'btn').click()
#click()表示单击
2.name定位
通过元素的name属性进行定位,前提是这个元素有name属性
3.class_name定位
通过元素的类名进行定位,元素有多种类名,需要挑取一个特有的类名
4.tag_name定位
通过标签名定位,但标签重复性非常高,一般不建议使用
5.link_text定位
专用用来定位超链接标签的,通过a标签内的全部文本内容,定位a标签
6.partial_link_text定位
有时候,使用link_text无法定位图片元素,则需要使用partial_link_text来定位超链接内局部的文本内容
(从字符串任意位置开始,截取连续的字符集)
#html
<input type="text" name="enroll">
#python
driver.find_element(By.NAME,'enroll1').send_keys("111")
#html
<input type="text" name="enroll" class="ipt-user">
#python
driver.find_element(By.CLASS_NAME,'ipt-user').send_keys("111")
#html
<input type="text">
#python
driver.find_element(By.TAG_NAME,'input').send_keys("111")
#html
<a href="http://news.baidu.com" target="_blank">新闻</a>
#python
driver.find_element(By.LINK_TEXT,'新闻').click()
#html
<a href="http://news.baidu.com" target="_blank">新闻,很多很多新闻</a>
#python
driver.find_element(By.PARTIAL_LINK_TEXT,'新闻').click()
7.定位一组元素
有时候,在定位元素时,会遇到多个符合条件的元素,而且所需要定位的元素不是第一个
需要使用.find_elements(),定位所有符合条件的元素,并返回一个列表,通过列表索引来获取指定元素
三、Xpath定位
XML PATH的简称,用于XML文档中查找元素信息的语言
类似的层级结构,都有标签组成,标签都有自己的属性信息
selenium中提供了根据Xpath来查找元素的方法:吗,
三、Xpath定位
Xpath是XML的简称,用于XML文档中查找元素信息的语言,类似的层级结构,都由标签组成,标签都
有自己属性信息
优点
1.XML中查找信息
2.支持HTML的查找
3.可通过元素和属性进行导航
安装依赖
语法:
策略:
#html
用户名:<input type="text" name="enroll" id="user" />
密码:<input type="password" name="enroll" id="password" />
邮箱:<input type="email" name="enroll" id="email" />
#
user = driver.find_elements(By.NAME,'enroll')
user[0].send_keys("yyro11")
user[1].send_keys("yyro12")
user[2].send_keys("yyro11@qq.com")
#html
<input type="text" name="enroll1" id="user">
#python
driver.find_element(By.XPATH,'/html/body/div/input[1]').send_keys('yyro11')
pip install lxml
#html
<input type="text" name="enroll1" id="user">
#python
driver.find_element(By.XPATH,'/html/body/div/input[1]').send_keys('yyro11')
剩余14页未读,继续阅读
资源评论
雷~雷丘
- 粉丝: 1
- 资源: 3
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功