1、selenium介绍
Selenium是一个自动化测试工具,利用它可以驱动浏览器执行特定的动作,如点击、下拉等操作,同时还可以获取浏览器当前呈现的页面的源代码,做到可见即可爬。对于一些JavaScript动态渲染的页面来说,此种抓取方式非常有效。本节中,就让我们来感受一下它的强大之处吧。
Selenium是调用本地浏览器直接发送请求,这样不管网站运用多么复杂的数据加载算法、加密等手段,都可以通过所见即所得来获取数据,当然这种方式的缺点就是速度比较慢,需要等待浏览器渲染出页面元素。
2、selenium安装,python与selenium版本均选择3.X以上版本
(1)安装selenium的python支持库,使用命令
pip
install
selenium
(2)下载并运行selenium-server服务器,官方下载地址为:
http://selenium-release.storage.googleapis.com/3.11/selenium-server-standalone-3.11.0.jar,下载完成后运行
java -jar selenium-server-standalone-3.11.0.jar 启动服务,启动成功后的样子:

编码方式:
from
selenium
import
webdriver
from
selenium.webdriver.common.desired_capabilities
import
DesiredCapabilities
browser = webdriver.Remote(
command_executor
=
'http://127.0.0.1:4444/wd/hub'
,
desired_capabilities
=DesiredCapabilities.CHROME) #将使用chrome浏览器
(3)另外也可以根据你使用的浏览器,Chrome或FireFox等下载对应的driver程序,如chromedriver的下载地址为:https://chromedriver.storage.googleapis.com/index.html?path=2.37/
编码方式:
from
selenium
import
webdriver #导入需要的库文件
browser = webdriver.Chrome(
executable_path
=
"D:
\\
selenium_server
\\
chromedriver"
) #这里需要指定chromedriver地址
(4)程序运行后的如下:

到这里为止说明你已经安装成功了。
如果你不能翻墙,无法下载所需的资源,可以到 https://download.youkuaiyun.com/download/wollzengji/10360107 这个页面去下载
3、selenium使用
(1)简单示例
from
selenium
import
webdriver
from
selenium.webdriver.common.keys
import
Keys #提供键盘按键支持
browser
=
webdriver.Chrome(executable_path="D:\\selenium_server\\chromedriver")
assert
"Python"
in
browser
.
title #判断title中是否含有“Python”,如果不含有将抛出异常
elem
=
browser
.
find_element_by_name
(
"q"
) #找到元素
elem
.
clear
() #清空输入框
elem
.
send_keys
(
"pycon"
) #在输入框中输入字符