emmm~
起因呢,这昨晚女同桌跟我说电脑有点卡,喊我去宿舍给她装个新系统,装系统就装系统吧,结果又说新系统表情包都没保存~
我当时就有点生气,真当我是万能的呢?
于是我直接就用Python给她爬了几十个G,完事扭头就走,任她怎么喊我也没用!
一、准备工作
使用的环境
- python3.8 | Anaconda
- pycharm
使用的模块
- requests 第三方模块 需要手动安装
- re 内置模块不需要安装
win+r 输入cmd ,确定后新窗口输入 pip install requests 即可安装成功。
插件安装
xpath helper扩展工具包
安装步骤:找助理老师获取xpath helper扩展工具包(注意:不要解压)
》》 打开Google浏览器 --> 更多工具 --> 扩展程序 --> 打开开发者模式 --> 把xpath helper扩展工具包直接拖入 --> 刷新
使用方法:快捷键 ctrl+shift+X
思路流程
1、分析数据来源
第一页:https://fabiaoqing.com/biaoqing/lists/page/1.html
多页 —> 第一页 --> 一个
2、实现代码
- 发送请求,第一页数据
- 获取数据
- 解析数据,表情
- 保存数据
二、效果展示
部分效果展示
三、代码解析
1、发送请求
第一页数据
url = 'https://fabiaoqing.com/biaoqing/lists/page/1.html'
headers = {
# 键值对 用户代理 浏览器的基本身份
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.0.0 Safari/537.36'
}
response = requests.get(url, headers=headers)
# <Response [200]> 响应对象 200 状态 成功 404 403
print(response)
2、获取数据
网页源代码
print(response.text)
re 找规律
3、解析数据
.*? 精准匹配数据
re_data = re.findall('<img class="ui image lazy" data-original="(.*?)" src="/Public/lazyload/img/transparent.gif" title="(.*?)" ', response.text)
# print(re_data)
# for 循环
for img in re_data:
# print(img)
#索引 [0] [1] ()
# 单个表情包链接
link = img[0]
suffix = link.split('.')[-1]
# print(suffix)
# print(link)
# 名字
title = img[1]
title = re.sub(r'[\/:*?"<>|]','',title)
# 二进制
content = requests.get(link, headers=headers).content
# print(content)
4、保存数据
with open('表情包\\' + title +'.' +suffix, mode='wb') as file:
file.write(content)
好了,今天的分享就到这里,我也录制了对应的视频详细讲解,完整代码和视频下方名片获取哈~
最后给大家分享一套Python教程:Python实战100例,希望对大家有所帮助!