前言
大三上刚接触python,在最后的学期实训中老师想让我们在博客园上写一篇有关于爬虫的博客(说是方便爬取每篇博客的信息),但是个人属实不喜欢博客园的界面,于是在优快云上编写了博客然后爬取自己博客的信息。
网页分析
以我之前写的实训博客为例,首先我们在网页上F12通过观察网页,博客名称、浏览量、点赞数、评论数、收藏数都可以很方便的找到对应标签,于是乎我就先用静态的方法爬取。
import requests
import re
url='https://blog.youkuaiyun.com/qq_45279235/article/details/111696618'
headers = {
'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36'}
html=requests.get(url,headers=headers)
#点赞数量
spancount=re.findall(r'<span id="spanCount" class="count" style>(.*?)</span>',html.text)
print(spancount)
但是静态爬取点赞数量和收藏数量出来的结果是空值(只展示了一部分代码),并且评论的标签爬出来的结果并不唯一。
所以我就把静态爬取网页的请求结果text输出出来,结果没有找到对应的标签和数据,只好就改成动态爬取。
功能实现
准备工作
1.安装Selenium库。
如果网速过慢安装失败的话使用镜像源下载
pip install selenium -i https://pypi.tuna.tsinghua.edu.cn/simple
如果提示WARNING: You are using pip version 20.2.1; however, version X.X.X is available 使用镜像源更新pip
python -m pip install --upgrade pip -i https://pypi.tuna.tsinghua.edu.cn/simple
2.下载对应的webdriver驱动
浏览器设置里面可以找到你的版本
在这里找到对应的驱动器,下载之后放到python的文件夹中
获取网页
通过驱动打开目标博客的网页
import requests
import re
from sele