selenium 介绍
- selenium是一个web自动化测试用的框架,程序员可以通过代码实现对浏览器的控制,比如打开网页,点击网页中的元素,实现鼠标滚动等操作
- 它支持多款浏览器,如谷歌,火狐浏览器等,当然也支持无头浏览器
- 目的: 在爬取数据的过程中经常遇到动态数据加载,一般动态数据加载有两种,一种通过ajax请求加载数据,另一种通过接收代码加载动态数据,selenium可以模拟人员真实操作浏览器,获取加载完成的页面数据
- ajax : url有规律也未加密,直接构建url连接请求
url加密过无法破解规律 --> selenium
js 动态数据加载 -->selenium
selenium安装:
三要素:浏览器,驱动程序,selenium框架
浏览器:推荐谷歌浏览器,标准稳定版本
驱动程序:http://chromedriver.storage.googleapis.com/index.html
下载要查看谷歌浏览器版本 对应下载
安装:
pip install selenium
下载完后进行测试
from selenium import webdriver
beowser = webdriver.Chrome(’./chromedriver.exe’) 将驱动放在脚本所在的文件夹
browser.get(‘https://www.baidu.com’) 向谁发送就写谁的网站地址
获取页面元素:
Find_element_by_id:根据元素的id
Find_element_by_name:根据元素的name
Find_element_by_xpath:根据xpath表达式
Find_element_by_class_name:根据class的值
Find_element_by_css_selector:根据css选择器
节点交互操作:
Click():点击
send_keys():输入内容
clear():清空操作
Execute_script(js):执行指定的js代码
JS代码: window.scrollTo(0, document.body.scrollHeight)可以模拟鼠标滚动一屏高度
quit():退出浏览器