问题:
selenium模块和爬虫之间又怎样的关联?
- 便捷的获取网站中动态加载的数据(ajax)
- 便捷的实现模拟登录
Selenium测试直接运行在浏览器中,就像真正的用户在操作一样
什么是selenium?
- 基于浏览器自动化的一个模块。
selenium的使用流程:
-
环境的安装: pip install selenium
-
下载一个浏览器的驱动程序
- 下载路径http://chromedriver.storage.googleapis.com/index.html
- 驱动程序和浏览器的映射关系:
https://blog.csdn.net/huilan_same/article/details/51896672 -
实例化一个浏览器对象
-
编写基于浏览器的自动化的代码
from selenium import webdriver
from lxml import etree
from time import sleep
# 实例化一个浏览器对象(传入浏览器的驱动程序)
bro = webdriver.Chrome(executable_path='./chromedriver.exe')
# 让浏览器发起一个指定的url对应请求
bro.get('http://scxk.nmpa.gov.cn:81/xk/')
# 获取浏览器当前页面的源码数据
page_text = bro.page_source
# 解析企业名称
tree = etree.HTML(page_text)
li_list = tree.xpath('//ul[@id="gzlist"]/li')
for li in li_list:
name = li.xpath('./dl/@title')[0]
print(name)
sleep(5)
bro.quit()