第一次用selenium爬取黑名单数据,但是不够自动化,页面总长和每页有多少条记录都是手动设置变量添加的,很不智能。
这次代码改进了一下内容:
(1)把页码有关的信息切出来,自动获取页数
(2)查找每页有多少记录
(3)利用两个list保存数据,更好维护
(4)利用css_selector获取数据,并且改了
(5)写成了函数,更加规范
(6)抛出异常
(7)timeout的问题,原来设置了30,后来timeout抛出了异常,改为120
题外话:selenium很方便,最大的好处是解决了动态网页的问题,虽然本题不是动态网页,但是相对速度也慢些,爬取378条数据需要超过400秒。
import time,csv
import traceback
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
url_whole='http://www.kaikaidai.com/Lend/Black.aspx'
# 加载所有页面
def parsePage():
#设置驱动浏览器s
browser=webdriver.Chrome()
#设置响应
browser.set_page_load_timeout(120)
#获取网址
browser.get(url_whole)
#找多少页
page_info=browser.find_element_