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(r‘chromedriver.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.基本使用
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模块在爬虫中的应用的主要内容,如果未能解决你的问题,请参考以下文章