没有表情包都不好意思说自己是年轻人——python一键保存几千张表情包图片
现在年轻人聊天,不带点表情包都不好意思说自己是年轻人…
刚认识的朋友丢几个表情包出去分分钟拉进关系,女朋友生闷气了整两个表情包开心一下,也可以化解尴尬,没时间打字整两张表情包,礼貌而不失尴尬。
一、欲扬先抑
准备工作很重要,先知道我们要干啥,用什么来做,怎么做,再去一步步实时,稳扎稳打。
开发环境配置
Python 3.6
Pycharm
打开你的浏览器搜索你要安装的软件名字
Python
后面带官方的就是官网了,但凡名字下方带了广告二字就别点,自信点,那就是广告。
直接点下面的 Python 3.10.2 下载最新版本即可,不用点那啥 Download
pycharm
随便点一个 Download
专业版社区版都OK
模块安装配置
requests
parsel
re
打开电脑,按住win+r,输入cmd,回车,输入pip install (加上要安装的模块名),回车即可安装。
二、代码
目标:fabiaoqing 地址前面后面大家自己补全一下,包括后面代码里的,这应该没有不会的吧。
导入模块
import requests
import parsel
import re
import time
请求网址
url = f'fabiaoqing/biaoqing/lists/page/{page}.html'
请求头
headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.105 Safari/537.36'}
返回网页源代码
response = requests.get(url=url, headers=headers)
解析数据
selector = parsel.Selector(response.text) # 把respons.text 转换成 selector 对象
第一次提取 提取所有的div标签内容
divs = selector.css('#container div.tagbqppdiv') # css 根据标签提取内容
通过标签内容提取他的图片url地址
img_url = div.css('img::attr(data-original)').get()
提取标题
title = div.css('img::attr(title)').get()
获取图片的后缀名
name = img_url.split('.')[-1]
保存数据
new_title = change_title(title)
对表情包图片发送请求 获取它二进制数据
img_content = requests.get(url=img_url, headers=headers).content
保存数据
def save(title, img_url, name):img_content = get_response(img_url).contenttry:with open('img\\' + title + '.' + name, mode='wb') as f:# 写入图片二进制数据f.write(img_content)print('正在保存:', title)except:pass
替换标题中的特殊字符
因为文件命名不明还有特殊字符,所以我们需要通过正则表达式替换掉特殊字符。
def change_title(title):mode = re.compile(r'[\\\/\:\*\?\"\<\>\|]')new_title = re.sub(mode, "_", title)return new_title
记录时间
time_2 = time.time()use_time = int(time_2) - int(time_1)
print(f'总共耗时:{use_time}秒')
兄弟们,这里是单线程,下面是多线程,我就直接上代码了。
import requests
import parsel
import re
import time
import concurrent.futures def change_title(title):mode = re.compile(r'[\\\/\:\*\?\"\<\>\|]')new_title = re.sub(mode, "_", title)return new_titledef get_response(html_url):headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.105 Safari/537.36'}repsonse = requests.get(url=html_url, headers=headers)return repsonsedef save(title, img_url, name):img_content = get_response(img_url).contenttry:with open('img\\' + title + '.' + name, mode='wb') as f:f.write(img_content)print('正在保存:', title)except:passdef main(html_url):html_data = get_response(html_url).textselector = parsel.Selector(html_data) divs = selector.css('#container div.tagbqppdiv') for div in divs:img_url = div.css('img::attr(data-original)').get()title = div.css('img::attr(title)').get()name = img_url.split('.')[-1]new_title = change_title(title)save(new_title, img_url, name)if __name__ == '__main__':time_1 = time.time()exe = concurrent.futures.ThreadPoolExecutor(max_workers=10)for page in range(1, 201):url = f'fabiaoqing/biaoqing/lists/page/{page}.html'exe.submit(main, url)exe.shutdown()time_2 = time.time()use_time = int(time_2) - int(time_1)print(f'总共耗时:{use_time}秒')
兄弟们,18秒一千多张,这结束的有点快了啊
大家看完觉得有用的话,点个赞收藏一下呗,爱你摸摸大,你看代码运行这么快,我可不希望大家平常也这么快,不太好~
没有表情包都不好意思说自己是年轻人——python一键保存几千张表情包图片相关推荐
- 用python一键保存几千张表情包斗图,分分钟征服朋友圈所有好友
现在年轻人聊天,不带点表情包都不好意思说自己是年轻人, 表情包已然成为人与人聊天中不可缺少的部分. 刚认识的朋友丢几个表情包出去分分钟拉进关系,女朋友生闷气了整两个表情包开心一下,也可以化解尴尬,没时 ...
- Python一键保存千张表情包图
表情包这个东西,现在每个人聊天都会看到.有时候自己发完文字后,不配一个表情包都会觉得很不习惯.不止是在聊天,就比如我现在发文章都要配几个表情包. 跟刚认识的朋友在聊天时,是不是的发几个表情包,都感觉能 ...
- python保存表情包_用Python一键保存半佛仙人所有的骚气表情包
阅读文本大概需要 3 分钟 出处:Python知识圈 作者:pk哥 2019年发现两个有意思而且内容比较硬核的公众号.都是同一个人运营的,我们都叫他半佛老师,现实中的职业是风控,公众号内容涉及揭秘灰产 ...
- 学习python表情包_我用Python一键保存了半佛老师所有的骚气表情包
本文首发于公众号「Python知识圈」,如需转载,请在公众号联系作者授权. 2019年发现两个有意思而且内容比较硬核的公众号.都是同一个人运营的,我们都叫他半佛老师,现实中的职业是风控,公众号内容涉及 ...
- python从入门到入土表情包-我用Python一键保存了半佛老师所有的骚气表情包
本文首发于公众号「Python知识圈」,如需转载,请在公众号联系作者授权. 2019年发现两个有意思而且内容比较硬核的公众号.都是同一个人运营的,我们都叫他半佛老师,现实中的职业是风控,公众号内容涉及 ...
- 用Python一键保存半佛仙人所有的骚气表情包
阅读文本大概需要 3 分钟 出处:Python知识圈 作者:pk哥 2019年发现两个有意思而且内容比较硬核的公众号.都是同一个人运营的,我们都叫他半佛老师,现实中的职业是风控,公众号内容涉及揭秘灰产 ...
- python灰产_我用Python一键保存了半佛老师所有的骚气表情包
本文首发于公众号「Python知识圈」,如需转载,请在公众号联系作者授权. 2019年发现两个有意思而且内容比较硬核的公众号.都是同一个人运营的,我们都叫他半佛老师,现实中的职业是风控,公众号内容涉及 ...
- 聊天尬住了?教你用Python一键获取斗图表情包,从此摇身变海王
很多兄弟在聊天上没有下太多的功夫,导致自己聊天的时候很容易尬住,然后就不知道聊啥了,这时候合适表情包分分钟就能救场,但是一看自己收藏的表情包,好家伙,两只手都数得过来. 所以今天来给兄弟们分享一下爬取 ...
- 聊天突然尬住?教你用Python一键获取斗图表情包,各种表情包轻松化解尴尬
很多兄弟在聊天上没有下太多的功夫,导致自己聊天的时候很容易尬住,然后就不知道聊啥了,这时候合适表情包分分钟就能救场,但是一看自己收藏的表情包,好家伙,两只手都数得过来. 所以今天来给兄弟们分享一下爬取 ...
最新文章
- SpringBoot 编写ajax可以访问的接口
- php lvs,LVS(四)LVS集群DR模式
- python培训比较好的机构-上海python培训比较好的机构
- leetcode算法题--Triangle
- 怎么判断有几个滴定突跃点_高中化学怎么学?先看近5年高考化学高频考点知识点分值分析...
- amixer 如何切通道_三峡工程如何突破技术难题?
- SSH远程连接:简单的连接
- c++用一级运算比较大小_Python运算符
- 3-unit8 Mariadb数据库
- 德赛西威280b升级_牵手英伟达/德赛西威 理想自动驾驶蓝图初现
- C语言程序入门(零基础入门)
- 卫星追踪利器 OpenATS简介
- facade设计模式学习(作者:KiddLee 来源:博客园 酷勤网收集 2007-09-03)
- java 超时状态_Java任务超时处理机制实现【原创】
- css的盒子模型与定位机制解读随记
- Spring boot连接oracle数据库
- 关于码距、检错、纠错
- 麻雀爱上凤凰在线播放,麻雀爱上凤凰详细剧情
- 『精华』技术大牛养成指南,一篇不鸡汤的成功学实践
- js导出变量 vue_js文件中怎么引用vue实例?