python爬虫之selenium模拟浏览器

selenium基础

Selenium是一个用于Web应用程序测试的工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。支持的浏览器包括IE(7, 8, 9, 10, 11),Mozilla Firefox,Safari,Google Chrome,Opera等。这个工具的主要功能包括:测试与浏览器的兼容性——测试你的应用程序看是否能够很好得工作在不同浏览器和操作系统之上。测试系统功能——创建回归测试检验软件功能和用户需求。支持自动录制动作和自动生成 .Net、Java、Perl等不同语言的测试脚本。

selenium最开始不是用于爬虫的而是一款web开发的测试工具,简单点解释:可以操控浏览器做人类浏览网页的动作,比如:鼠标点击、拖拽;用户输入,表单填充;Cookie;等等,当然通过它得到ajax网页的真实数据也不在话下。

安装

  • 首先需要安装python环境,然后安装Selenium。
 pip install selenium

安装完成后会提示安装成功


image.png
  • 安装Chromedriver
    打开http://npm.taobao.org/mirrors/chromedriver/找到与本地chrome版本对应或相近的版本,下载,解压后将文件夹内的chromedriver.exe复制到python安装目录
    image.png

利用selenium+Chromedriver模拟操作

  • 打开百度首页
from selenium import webdriver
import time
# chrome配置
opt = webdriver.ChromeOptions()
# 本地chrome可执行文件路径
opt.binary_location = 'C:\\Program Files\\Google\\Chrome\\Application\\chrome.exe'

url = 'http://www.baidu.com'

driver = webdriver.Chrome(options=opt)

driver.get(url)
  • 在输入框中输入关键字python
# 获取输入框
input = driver.find_element_by_id('kw')
input.send_keys('python')
  • 点击搜索按钮
# 搜索按钮
searchBtn = driver.find_element_by_id('su')
searchBtn.click()
  • 在控制台打印搜索结果
#搜索结果
results = driver.find_elements_by_css_selector('h3.t')
print(len(results))

for item in results:
    print(item.text)
# 关闭浏览器
driver.close()
image.png
1234.gif

你可能感兴趣的:(python爬虫之selenium模拟浏览器)