爬虫、优快云
前置准备:
修改代码中的url、url2成你想爬取的博主的相应域名,只需要改qq_32465127的部分。
在py文件的同目录下放一个火狐浏览器驱动geckodriver.exe
步骤:
1.通过selenium获取js动态加载的页数
页数是javascript动态加载,不能直接通过urllib获取。改为通过selenium获取页数。
2.通过urllib获取一页内所有文章的链接
根据页数、链接,获取每一页的文章链接,存入数组。
3.遍历文章链接,获取对应的文章的html文件,写好标题存储起来
所有代码如下:
import urllib.request
import re
from selenium import webdriver
url='https://blog.youkuaiyun.com/qq_32465127?viewmode=contents'
url2='https://blog.youkuaiyun.com/qq_32465127/article/list/'
#============通过selenium获取js动态加载的页数====================
fireFoxOptions = webdriver.FirefoxOptions()
fireFoxOptions.add_argument('-headless')
driver = webdriver.Firefox(firefox_options=fireFoxOptions)
try:
driver.get(url)
except Exception as e:
print("get website error")
try:
ui_pagers = driver.find_elements_by_class_name("ui-pager")
except Exception as e:
print("get class name erro