selenium+chromedriver+PhantomJS安装配置

爬虫——selenium模块使用

selenium是一个web的自动化测试工具,最初是为网站自动化测试而开发的,selenium可以直接运行在浏览器上,它支持所有主流的浏览器,可以接收指令,让浏览器自动加载页面,获取需要的数据,甚至页面截屏,在反反爬虫中也是一个重要的工具,比较强大,但是缺点就是——慢。一般如果要爬的网站是动态加载的,那么可以考虑用selenium,听说号称 “可见即可爬”

Selenium+chromedriver+PhantomJS

selenium让程序连接到浏览器,让浏览器去完成各种操作,是一种自动化测试工具

1、selenium安装

(1)先下载驱动chromedriver(有头浏览器,用的比较多)

chromedriver能通过驱动打开谷歌浏览器,并通过代码对其进行操作
下载地址:https://registry.npmmirror.com/binary.html?path=chromedriver/
需要找到自己的谷歌浏览器版本,比如我99.0.4844.xx,对应前三部分即可,Windows只有32位版本的,但是问题不大,跟64位是兼容的

简单测试

以百度搜索首页为例,输入以下代码,会自动加载驱动打开chrome浏览器,并向输入框中输入字符,搜索相应字符的内容

from selenium import webdriver		# 导入驱动器
import time

driver = webdriver.Chrome()						# 实例化,指定打开chrome 浏览器
driver.get('https://www.baidu.com/')			# 请求网址
time.sleep(2)									# 做个延时处理,要不然很容易被发现
input_tag = driver.find_element_by_id('kw')		# 通过标签id定位到输入框
input_tag.send_keys('北京大学')					# 向输入框中输入内容

click_tag = driver.find_element_by_id('su')		# 定位到“百度一下”案件
click_tag.click()								# 按钮点击事件
time.sleep(3)
driver.close()									# 关闭当前浏览器窗口

运行之后,会打开浏览器,并在输入框中输入“北京大学”,随后自动搜索,跳转到相关页面

(2)安装无头浏览器PhantomJS

PhantomJS 是一个浏览器驱动,但是不会打开浏览器,相当于盲人操作(也是对浏览器的操作),也就是通过代码的方式模拟人进行浏览器操作

下载地址:https://phantomjs.org/download.html

完成之后利用PhantomJS做个简单的测试,模拟人向网页发起请求,比如

from selenium import webdriver

driver = webdriver.PhantomJS()
driver.get("https://www.baidu.com")
driver.save_screenshot("baidu.png")

# 2.定位和操作
driver.find_element_by_id("kw").send_keys("北京大学")
driver.find_element_by_id("su").click()

# 3.查看请求信息
driver.page_source
driver.get_cookies()
driver.current_url				# 查看当前访问的网址

# 4.退出
driver.quit()

运行这段代码之后,会在当前路径下保存一个百度首页的图片,但是运行过程中不会打开浏览器

注意,这两个安装好后要放到自己python的安装目录下,也可以添加到环境变量中,具体怎么添加相信不用多讲,毕竟都是大佬

像我这样
在这里插入图片描述

(3)再安装selenium
pip install selenium == 3.14.1   # (建议不要安装最新版,这是我用的版本)
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

心机小兔

你的鼓励会让我更加努力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值