表情包这个东西,现在每个人聊天都会看到。有时候自己发完文字后,不配一个表情包都会觉得很不习惯。不止是在聊天,就比如我现在发文章都要配几个表情包。

跟刚认识的朋友在聊天时,是不是的发几个表情包,都感觉能更快的拉近关系 ~
但是一个个保存表情包太麻烦了。用python一键保存就很方便!
接下来教你们如何用python一键保存千张表情包图

首先开发环境配置

Python 3.6
Pycharm

其次就是代码了

导入模块

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}秒')

ok,十几秒一千多张,这速度有点快啊

朋友们看完的话,觉得有用不错的话,给我点个赞吧 ~

Python一键保存千张表情包图相关推荐

  1. python恶搞表情包下载大全_用 Python 把你的朋友变成表情包

    标签:rgb   get   pytho   尺寸   imp   像素   lan   href   不可 实现步骤 导入朋友的照片(前景照片); 处理前景照片(缩放.旋转,填充); 导入熊猫头照片 ...

  2. python爬表情包_教你用Python来爬取表情包网站的所有表情图片

    教你用Python来爬取表情包网站的所有表情图片 配置环境 安装Python 开发环境 3X系列 win + R 打开运行,输入cmd,输入python,进行验证是否安装Python win + R ...

  3. 用python一键保存几千张表情包斗图,分分钟征服朋友圈所有好友

    现在年轻人聊天,不带点表情包都不好意思说自己是年轻人, 表情包已然成为人与人聊天中不可缺少的部分. 刚认识的朋友丢几个表情包出去分分钟拉进关系,女朋友生闷气了整两个表情包开心一下,也可以化解尴尬,没时 ...

  4. 没有表情包都不好意思说自己是年轻人——python一键保存几千张表情包图片

    现在年轻人聊天,不带点表情包都不好意思说自己是年轻人- 刚认识的朋友丢几个表情包出去分分钟拉进关系,女朋友生闷气了整两个表情包开心一下,也可以化解尴尬,没时间打字整两张表情包,礼貌而不失尴尬. 一.欲 ...

  5. python保存表情包_用Python一键保存半佛仙人所有的骚气表情包

    阅读文本大概需要 3 分钟 出处:Python知识圈 作者:pk哥 2019年发现两个有意思而且内容比较硬核的公众号.都是同一个人运营的,我们都叫他半佛老师,现实中的职业是风控,公众号内容涉及揭秘灰产 ...

  6. 学习python表情包_我用Python一键保存了半佛老师所有的骚气表情包

    本文首发于公众号「Python知识圈」,如需转载,请在公众号联系作者授权. 2019年发现两个有意思而且内容比较硬核的公众号.都是同一个人运营的,我们都叫他半佛老师,现实中的职业是风控,公众号内容涉及 ...

  7. python从入门到入土表情包-我用Python一键保存了半佛老师所有的骚气表情包

    本文首发于公众号「Python知识圈」,如需转载,请在公众号联系作者授权. 2019年发现两个有意思而且内容比较硬核的公众号.都是同一个人运营的,我们都叫他半佛老师,现实中的职业是风控,公众号内容涉及 ...

  8. 用Python一键保存半佛仙人所有的骚气表情包

    阅读文本大概需要 3 分钟 出处:Python知识圈 作者:pk哥 2019年发现两个有意思而且内容比较硬核的公众号.都是同一个人运营的,我们都叫他半佛老师,现实中的职业是风控,公众号内容涉及揭秘灰产 ...

  9. python灰产_我用Python一键保存了半佛老师所有的骚气表情包

    本文首发于公众号「Python知识圈」,如需转载,请在公众号联系作者授权. 2019年发现两个有意思而且内容比较硬核的公众号.都是同一个人运营的,我们都叫他半佛老师,现实中的职业是风控,公众号内容涉及 ...

最新文章

  1. “此文件来自其他计算机,可能被阻止以帮助保护该计算机” 教你win7解除阻止程序运行怎么操作...
  2. python写入csv文件的几种方法
  3. JavaScript 进行数值与对应的 ASCII 字符之间的转换【from​Char​Code、from​Code​Point、charCodeAt、code​PointAt】
  4. Redis----windows下的常用命令
  5. libtorch和torchvision的编译安装
  6. 【转】自学成才秘籍!机器学习深度学习经典资料汇总
  7. 爱我的人请别走远(转载)
  8. UIButton常用属性
  9. ios开发text kit_TextKit
  10. 百旺智能编码_【百旺开票软件税控盘版】百旺金税盘开票软件下载 v2020 最新版本-趣致软件园...
  11. endnotex9切换中文_EndNote9简明教程中文版
  12. 通信协议(一)——UART协议
  13. 如何知道自己的手机注册了多少软件和网站?(亲测有效)
  14. 如何在本地运行travis-ci
  15. windows下使用HHKB键盘,配置autohotkey键位映射
  16. Python数据处理课程设计-房屋价格预测-代码
  17. java 判断图片格式_Java判断上传图片格式的实例代码
  18. 利用策略路由traffic-policy 实现路由的控制
  19. 飞飞cms添加广告html,飞飞cms影视系统 安装说明飞飞影视系统 建站流程
  20. CVPR 2019 目标检测论文汇总

热门文章

  1. C/C++ 控制台高级操作(非常详细)
  2. gStore:A Graph-based SPARQL Query Engine---part1
  3. LVGL 官方UI设计工具 EdgeLine代码移植
  4. 关于美食商城HTML网页设计-----在线美食订餐网站html模板源码30个页面(功能齐全) html+css+javascript网页设计实例 企业网站制作...
  5. 经典文献阅读之--Globally Consistent and Tightly Coupled 3D LiDAR Inertial Mapping(紧耦合3D激光雷达)
  6. 软件定义存储(SDS)之入门
  7. 【Qt象棋游戏】03_象棋棋子摆放
  8. 和疫情赛跑 30 天,湖北武汉的程序员们怎么样了?
  9. Rogue Signs: Deceiving Traffic Sign Recognition with Malicious Ads and Logos
  10. 肌电信号的包络matlab程序_基于matlab的肌电信号处理程序: