IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发测试 -> selenium基础用法及举例 -> 正文阅读

[开发测试]selenium基础用法及举例

作者:recommend-item-box type_blog clearfix
selenium模块的基本使用
问题:selenium模块和爬虫之间具有怎样的关联?
    -便捷的获取网站中动态加载的数据
    -便捷实现模拟登录
什么是selenium模块?
    -基于浏览器自动化的一个模块。
selenium使用流程:
    -环境安装:pip install selenium
    -下载一个浏览器的驱动程序
        -下载路径参考博客:https://blog.csdn.net/VXadmin/article/details/89433821
        -驱动程序和浏览器的映射关系:https://blog.csdn.net/weixin_50233989/article/details/113242332
    -实例化一个浏览器对象
-编写基于浏览器自动化的操作代码
    -发起请求:get(url)
    -标签定位:find系列的方法
    -标签交互:send keys( 'xxx')
    -执行js程序:excute script('jsCode ')
    -前进,后退:back(),forward()
    -关闭浏览器:quit()


1.获取ajax页面数据(化妆品药监局数据爬取)

from time import sleep
from selenium import webdriver
from lxml import etree

# 实例化一个游览器对象(传入一个浏览器对象)
bro = webdriver.Edge(executable_path='./MicrosoftWebDriver.exe')
# 让浏览器发起一个指定url请求
bro.get('http://scxk.nmpa.gov.cn:81/xk/')

# page_source获取浏览器当前页面的页面源码数据
page_text = bro.page_source

# 解析企业名称
tree = etree.HTML(page_text)
li_list = tree.xpath('//ul[@id="gzlist"]/li')
for li in li_list:
    name = li.xpath('./dl/@title')[0]
    print(name)

sleep(5)
bro.quit()

2.selenium其他自动化操作

from time import sleep
from selenium import webdriver
from lxml import etree

bro = webdriver.Edge(executable_path='./MicrosoftWebDriver.exe')
bro.get('https://www.taobao.com/')

# 标签定位
search_input=bro.find_element_by_id('q')
# 标签交互
search_input.send_keys('Iphone')

# 执行一组js数据
bro.execute_script('window.scrollTo(0,document.body.scrollHeight)')
sleep(5)
# 点击搜索按钮
btn = bro.find_element_by_css_selector('.btn-search')
btn.click()

bro.get('https://daohang.qq.com/?fr=hmpage')
sleep(2)
bro.back()
sleep(2)
bro.forward()

sleep(5)
bro.quit()
  开发测试 最新文章
pytest系列——allure之生成测试报告(Wind
某大厂软件测试岗一面笔试题+二面问答题面试
iperf 学习笔记
关于Python中使用selenium八大定位方法
【软件测试】为什么提升不了?8年测试总结再
软件测试复习
PHP笔记-Smarty模板引擎的使用
C++Test使用入门
【Java】单元测试
Net core 3.x 获取客户端地址
上一篇文章      下一篇文章      查看所有文章
加:2021-09-14 13:39:31  更:2021-09-14 13:39:46 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/18 0:19:30-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码