Python中selenium的玩法,小朋友看了都说学会了

selenium提取数据

1. driver对象的常用属性和方法

2. driver对象定位标签元素获取标签对象的方法

3. 标签对象提取文本内容和属性值

selenium的其它使用方法

1. selenium标签页的切换

2. switch_to切换frame标签

3. selenium对cookie的处理

4. selenium控制浏览器执行js代码

5. 页面等待

6. selenium开启无界面模式

7. selenium使用代理ip

8. selenium替换user-agent


selenium的介绍


1. selenium运行效果展示

Selenium是一个Web的自动化测试工具,最初是为网站自动化测试而开发的,Selenium 可以直接调用浏览器,它支持所有主流的浏览器(包括PhantomJS这些无界面的浏览器),可以接收指令,让浏览器自动加载页面,获取需要的数据,甚至页面截屏等。我们可以使用selenium很容易完成之前编写的爬虫,接下来我们就来看一下selenium的运行效果

chrome浏览器的运行效果

在下载好chromedriver以及安装好selenium模块后,执行下列代码并观察运行的过程

from selenium import webdriver

如果driver没有添加到了环境变量,则需要将driver的绝对路径赋值给executable_path参数

driver = webdriver.Chrome(executable_path=‘/home/worker/Desktop/driver/chromedriver’)

如果driver添加了环境变量则不需要设置executable_path

driver = webdriver.Chrome()

向一个url发起请求

driver.get(“http://www.itcast.cn/”)

把网页保存为图片,69版本以上的谷歌浏览器将无法使用截图功能

driver.save_screenshot(“itcast.png”)

print(driver.title) # 打印页面的标题

退出模拟浏览器

driver.quit() # 一定要退出!不退出会有残留进程!

phantomjs无界面浏览器的运行效果

PhantomJS 是一个基于Webkit的“无界面”(headless)浏览器,它会把网站加载到内存并执行页面上的 JavaScript。下载地址:http://phantomjs.org/download.html

from selenium import webdriver

指定driver的绝对路径

driver = webdriver.PhantomJS(executable_path=‘/home/worker/Desktop/driver/phantomjs’)

driver = webdriver.Chrome(executable_path=‘/home/worker/Desktop/driver/chromedriver’)

向一个url发起请求

driver.get(“http://www.itcast.cn/”)

把网页保存为图片

driver.save_screenshot(“itcast.png”)

退出模拟浏览器

driver.quit() # 一定要退出!不退出会有残留进程!

观察运行效果

  • python代码能够自动的调用谷歌浏览或phantomjs无界面浏览器,控制其自动访问网站

无头浏览器与有头浏览器的使用场景

  • 通常在开发过程中我们需要查看运行过程中的各种情况所以通常使用有头浏览器

  • 在项目完成进行部署的时候,通常平台采用的系统都是服务器版的操作系统,服务器版的操作系统必须使用无头浏览器才能正常运行

2. selenium的作用和工作原理

利用浏览器原生的API,封装成一套更加面向对象的Selenium WebDriver API,直接操作浏览器页面里的元素,甚至操作浏览器本身(截屏ÿ

  • 15
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值