前言
爬虫工作可谓是斗智斗勇,很多反爬虫工作杜绝了以往机器的模拟登录,最厉害的莫过于天猫超市的后台管理。因此,现在的机器爬虫在登陆的工作上,会使用半人工化的操作。而selenium便是一个很不错的机制。
关于selenium
Selenium是一个用于Web应用程序测试的工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。支持的浏览器包括IE(7、8、9)、Mozilla Firefox、Mozilla Suite、Google Chrome等。这个工具的主要功能包括:测试与浏览器的兼容性——测试你的应用程序看是否能够很好得工作在不同浏览器和操作系统之上。测试系统功能——创建回归测试检验软件功能和用户需求。支持自动录制动作和自动生成 .Net、Java、Perl等不同语言的测试脚本。Selenium 是ThoughtWorks专门为Web应用程序编写的一个验收测试工具。
selenium的安装
pip install selenium
selenium的实践代码
from selenium import webdriver
from selenium.common.exceptions import NoSuchElementException
from selenium.webdriver.common.keys import Keys
import time
import re
import datetime
def login():
browser = webdriver.Firefox() # 启动火狐浏览器
login_url = "http://scm.cbbs.tmall.com" # 输入访问网址, 以天猫超市为例
browser.get(login_url) # 开始访问网址
while True:
tag = raw_input("是否已经登录成功?(y/n)")
if tag == 'y':
break
else:
print "登录失败,请重新运行程序"
exit(1)
data = browser.page_source # 登录后, 获取源代码
return browser