用python一键保存几千张表情包斗图,分分钟征服朋友圈所有好友
现在年轻人聊天,不带点表情包都不好意思说自己是年轻人, 表情包已然成为人与人聊天中不可缺少的部分。
刚认识的朋友丢几个表情包出去分分钟拉进关系,女朋友生闷气了整两个表情包开心一下,也可以化解尴尬,没时间打字整两张表情包,礼貌而不失尴尬。
人生苦短,我用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 爬取表情包-斗图不会输在起跑线 对于酷爱聊天的朋友来说,表情包应该是他们心中的灵魂,没有图的聊天只能算虾扯蛋了.图片(表情包)赋予了聊天更多的内涵,很多时候 ...
- 【精选】表情包斗图小程序(可引流,开通流量主,权益外卖cps,带pc后台管理)
牛云表情包斗图小程序,流量主变现,外卖cps权益变现,uniCloud云开发无需购买服务器和域名,助力每一位内容创业者. 技术优势 基于 uniapp + uniCloud 研发,无需购买服务器和域名 ...
- Python自动生成表情包 斗图再无对手!
作为一个数据分析师,应该信奉一句话----"一图胜千言".不过这里要说的并不是数据可视化,而是一款全民向的产品形态----表情包!!!! 表情包不仅仅是一种符号,更是一种文化:是促 ...
- python表情包斗图_Python爬虫入门教程 13-100 斗图啦表情包多线程爬取
斗图啦表情包多线程爬取-写在前面 今天在CSDN博客,发现好多人写爬虫都在爬取一个叫做斗图啦的网站,里面很多表情包,然后瞅了瞅,各种实现方式都有,今天我给你实现一个多线程版本的.关键技术点 aioht ...
- “一日不斗,我浑身难受”,表情包斗图成瘾下的大市场
聊天无言对,斗图能长久.雪碧与阔乐,压惊必须有.暴漫蘑菇头,都没群主丑.真香奥利给,皮虾我们走.修仙入佛系,难逃单身狗.雪姨黄子韬,尔康张学友.心情不美丽,土拔鼠怒吼.没事斗斗图,结交好基友-- 网友 ...
- 微信大更新!表情包突破300上限,朋友圈发30秒视频,包括15个新变化!
今天微信针对iOS设备发布了8.0.3新版本, App Store 页面微信只提到"本次更新解决了一些已知问题",但经过实测发现共带来了15个新变化,一期来看看吧 我们一个个来看看 ...
- python画笑脸表情_用Matplotlib,妈妈再也不担心我没有表情包斗图了
全文共3003字,预计学习时长6分钟 Netflix.Instagram.YouTube.电影还有电视剧,这些都有什么共同之处呢?它们都是视觉媒介,吸引着形形色色的观众. 今时今日,大部分人逐渐放弃读 ...
- python表情包斗图_Python爬取 斗图表情,让你成为斗图大佬
话不多说,上结果(只爬了10页内容) 上代码:(可直接运行) 用到Xpath #encoding:utf-8 # __author__ = 'donghao' # __time__ = 2018/ ...
最新文章
- 关于技术方案与架构宣讲的思考
- vue封装第三方插件并发布到npm
- 中国伺服电机行业运营现状及前景趋势展望报告2022-2028年版
- java tail -f 后返回_tail -f 的实现 | 学步园
- 20145202马超 2016-2017-2 《Java程序设计》第一次实验
- caffe 下测试 MNIST数据
- 作者:司光亚(1967-),男,国防大学信息作战与指挥训练教研部教授,主要研究方向为战争复杂系统建模仿真。...
- 让自己慢下来(2)-朋友们的回复
- Maven学习(1) - Maven入门
- 黑客,计算机革命的英雄!
- 怎么把Word文档转换成长图
- 印尼穴居小矮人是进化异类还是病态现代人?
- OpenCV实现人体姿态估计(人体关键点检测)OpenPose(图像、视频或调用摄像头均能实现)
- 使用Arduino驱动 ADS1115 ADC采样芯片
- 手机游戏开发平台有哪些
- 孩子沉迷网游 呼唤亲子陪伴教育
- 深度测评 | 五大主流多端开发框架全面对比
- 商业仲裁与诉讼律师Katherine Cheung加入德汇香港担任合伙人
- matlab编程勒让德多项式展开例题解析,第19 勒让德多项式 球函数习题及解答
- C语言 —— 你不得不知道的 scanf 的高级用法
热门文章
- oracle是做什么用的,可以形容下Oracle有什么用,是干什么的吗?
- 横向评测常见的优秀国外5个域名注册商
- Qt下的国际化方法—翻译文件(.ts .qm文件)的使用
- 学习安装java运行环境
- Excel出现“向程序发送命令时出现问题”错误
- 分布式体系结构:非集中式结构
- tdk磁材手册_TDK 集团发布关于铝电解电容器的完整修订版 《数据手册》
- 一条宽带多人共享违法?
- 计算机英语性考任务答案,2010秋英语(1)形考答案
- 「镁客·请讲」OracleChain老狼:EOS智能合约生态唯上,超级节点的竞争,不看吹牛先看做事...