selenium模块在爬虫中的应用

Posted zangyue

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了selenium模块在爬虫中的应用相关的知识,希望对你有一定的参考价值。

1. 相关概念

1. selenium模块

  是一个基于浏览器自动化的模块

2. 与爬虫之间的关联

  便捷的捕获到动态加载到的数据(可见即可得)

  实现模拟登陆

3.环境安装

pip3 install selenium

简单演示

from selenium import webdriver
from time import sleep

# 后面是你的浏览器驱动位置,记得前面加r‘‘,‘r‘是防止字符转义的
driver = webdriver.Chrome(rchromedriver.exe)

# 用get打开百度页面
driver.get("http://www.baidu.com")

# 查找页面的“设置”选项,并进行点击
driver.find_elements_by_link_text(设置)[0].click()
sleep(2)

# 打开设置后找到“搜索设置”选项,设置为每页显示50条
driver.find_elements_by_link_text(搜索设置)[0].click()
sleep(2)

# 选中每页显示50条
m = driver.find_element_by_id(nr)
sleep(2)
m.find_element_by_xpath(//*[@id="nr"]/option[3]).click()
m.find_element_by_xpath(.//option[3]).click()
sleep(2)

# 点击保存设置
driver.find_elements_by_class_name("prefpanelgo")[0].click()
sleep(2)

# 处理弹出的警告页面   确定accept() 和 取消dismiss()
driver.switch_to_alert().accept()
sleep(2)

# 找到百度的输入框,并输入 美女
driver.find_element_by_id(kw).send_keys(美女)
sleep(2)

# 点击搜索按钮
driver.find_element_by_id(su).click()
sleep(2)

# 在打开的页面中找到“Selenium - 开源中国社区”,并打开这个页面
driver.find_elements_by_link_text(美女_百度图片)[0].click()
sleep(3)

# 关闭浏览器
driver.quit()

2.基本使用

  准备好某一款浏览器的驱动程序:http://chromedriver.storage.googleapis.com/index.html

  版本的映射关系:https://blog.csdn.net/huilan_same/article/details/51896672

1.实例化某一款浏览器对象

from time import sleep
from selenium import webdriver

bro = webdriver.Chrome(executable_path="chromedriver.exe")

# 录入路由地址
bro.get("https://www:jd.com/")
sleep(2)

# 进行标签定位
search_input = bro.find_element_by_id("key")

# 向搜索框中录入关键词
search_input.send_keys("苹果")

# 定位搜索按钮
btn = bro.find_element_by_xpath(//*[@id="search"]/div/div[2]/button)

# 点击搜索按钮
btn.click()
sleep(2)

# 退出访问
bro.quit()

以上是关于selenium模块在爬虫中的应用的主要内容,如果未能解决你的问题,请参考以下文章

爬虫selenium模块

为爬虫框架构建Selenium模块DSL模块(Kotlin实现)

爬虫解析Selenium 之 --- Selenium模块

3爬虫之selenium模块

爬虫之selenium模块

爬虫----selenium模块