Python爬虫中selenium的学习与应用
Selenium是一个自动化测试工具,利用它可以驱动浏览器执行特定的动作,如点击、下拉等操作,同时还可以获取浏览器当前呈现的页面的源代码,做到可见即可爬。对于一些JavaScript动态渲染的页面来说,此种抓取方式非常有效。
Selenium可以轻松部署在Windows,Linux,Solaris和Macintosh等平台上。此外,它支持IOS(IOS,Windows Mobile和Android)等移动应用程序的OS(操作系统)。
Selenium通过使用特定于每种语言的驱动程序支持各种编程语言。Selenium支持的语言包括C#,Java,Perl,PHP,Python和Ruby。目前,Selenium Web驱动程序最受Python和C#欢迎。 Selenium测试脚本可以使用任何支持的编程语言进行编码,并且可以直接在大多数现代Web浏览器中运行。 Selenium支持的浏览器包括Internet Explorer,Mozilla Firefox,Google Chrome和Safari。
1. selenium chrome浏览器驱动的安装
chrome浏览器驱动下载网址
找到自己的浏览器对应的版本然后进行下载,下载结果为压缩包,将压缩包进行解压.
- 方法一:
最后把解压后的exe文件放到Python的安装目录下就可以了
如果不记得自己的Python安装目录
import sys
print (sys.executable)
可以查看自己的Python安装目录
- 方法二:
我们可以手动创建一个存放浏览器驱动的文件夹,如:D:\Chrome driver
将下载的浏览器驱动放到该文件夹下,然后再将D:\Chrome driver目录添加到高级系统设置-环境变量-系统变量-path中
2. selenium控制chrome,Firefox等浏览器
-
首先将我们需要的selenium的包导入 from selenium.webdriver import Chrome(如果使用chrome浏览器就导入chrome,如果使用别的浏览器则将名称换掉即可)
-
创建浏览器对象 web = Chrome()
-
打开浏览器 web.get("www.baidu.com")(此处以百度举例)
-
找到某个元素. 点击它 el = web.find_element_by_xpath('此处是xpath的地址')(xpath不了解的可以看我之前的博客) el.click() # 点击事件
-
查找某些元素时,我们需要掌握前后端的一些知识,我们可以通过element,class_name,id,tag_name等,主要视情况而定
-
当执行点击事件时,我们需要导入Keys from selenium.webdriver.common.keys import Keys
-
浏览器窗口之间的切换 web.switch_to.window(web.window_handles[-1])
表示的是网页栏最后一个网页
web.switch_to.window(web.window_handles[0])
表示的是网页栏第一个网页
- 点赞
- 收藏
- 关注作者
评论(0)