初识selenium

selenium是什么

selenium模块可以让 Python 直接控制浏览器,可以实际点击链接,填写登录信息等等,几乎就像是真正的用户在操作一样。支持的浏览器包括 IE, Firefox, Chrome, Safari, Opera等。selenium的缺点就是要启动web浏览器,这样会使得爬取的速度变慢,并且难以在后台运行。

安装

本机环境
Python 3.6
windows

安装selenium
在cmd中输入 python -m pip install selenium

安装驱动文件
此处以Firefox为例
下载Geckodriver(https://github.com/mozilla/geckodriver/releases
然后将geckodriver.exe放到Python安装根目录(与Python.exe同一目录)

例子

以第一财经网的新闻页面为例,在页面下方有一个点击加载更多的可点击对象(即支持click()方法,但不是按钮)。我们用selenium去模拟点击点击加载更多,以此实现不断向下加载。

通过检查元素,找到点击加载更多这个标签的信息。
具体代码如下:

import time
from selenium import webdriver
browser = webdriver.Firefox()  # 启动Firefox浏览器
browser.get('http://www.yicai.com/news/')  # 将浏览器指向该网页
while True:
    divmore = browser.find_element_by_id('divMore')  # 在网页中查找匹配id属性值的元素,返回一个WebElement对象
    divmore.click() # 调用WebElement对象的click()方法,模拟鼠标在该元素上点击
    time.sleep(1) # 每隔1s点击一次


该文章于2017年7月26日于CSDN上首次发表,2017年12月24日搬家至此!

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1 控制浏览器 Selenium 主要提供的是操作页面上各种元素的方法,但它也提供了操作浏览器本身的方法,比...
    古佛青灯度流年阅读 22,180评论 6 66
  • 最近看了才大(静觅博客博主)的selenium教程,在使用过程中也遇到了不少问题,现在应该也算是入了点自动化测试的...
    GrasFish阅读 10,218评论 1 3
  • 转自Selenium WebDriver注意:本章内容官方团队正在完善中。 介绍 WebDriver### Sel...
    抓兔子的猫阅读 7,798评论 2 22
  • 三个冬天。我与你结识、相爱、分离。那一幕幕记忆的碎片,至今依然萦绕在我的脑海。 【结识】 认识她是在一个下雪天。 ...
    霄壤间阅读 335评论 0 1
  • 今天中午午睡快结束的时候我感受到了强烈的胎动,感觉他在用劲的踢我,之前宝宝的胎动也有但是很小这次是最强烈的,无论一...
    苏兔儿阅读 171评论 0 0