python用1000张照片合成一张_有没有什么惊艳的微信头像?Python一键下载1000张!...
bee君一直以来,对选用一个合适的微信头像,感到比较头疼。
今天bee君为大家推荐1000多张,非常惊艳的能用做微信头像的图片,都已按照类别分好类,文末提供下载方法,相信大家一定能从中找到一款自己喜欢的。
1 requests失败
使用requests请求微信表情图片网址https://www.zhihu.com/question/335825565, 同时使用web网页提取包:lxml,提取想要的所有图片链接地址,也就是下面的代码:
import requests
from lxml import etree
import pandas as pd
import re
url = 'https://www.zhihu.com/question/335825565'
with requests.get(url) as res:
content = res.content
print(content)
html = etree.HTML(content)
imgs = html.xpath('//figure//img/@src')
print(imgs)
这样直接运行,content的打印显示如下,并没有请求到想要的结果。
b'\r\n
400 Bad Request\r\n\r\n
400 Bad Request
\r\n
openresty\r\n\r\n\r\n'
2 直接提取
换种直接的方法,打开网页https://www.zhihu.com/question/335825565,F12查看网页结构:
直接把此标签的全部内容copy到本地,并提取出所有图片的地址。
选中上面标签,右键->copy->copy element 直接把此标签的全部内容copy到本地,保存为wechat_pic.html
下一步,提取出所有图片的地址,直接使用python的正则模块提取就行。
第一步:导入用到的包
import os
import re
from urllib.request import urlopen
第二步~最后一步:读入上面复制的标签内容,使用正则表达式提取出需要的图片url,再使用urlopen从这个url下载图片文件,并保存到本地。这里面有一些细节问题,建议读者把代码下载后,跑跑试试。
with open('./data/wechat_pic.html',mode='r',errors='ignore') as f:
lines = f.readlines()
pic_urls = re.findall(r'
pic_urls = [pic for pic in pic_urls if pic.startswith('https')] # 只保留以https开头的地址
#pic_urls = set(pic_urls) # 直接使用set会打破原来顺序,因为原网页按照图片分类,所以直接使用set去重,效果不佳
downloaded = []
for i,url in enumerate(pic_urls):
if url in downloaded:
continue
print(f'{url}')
q=urlopen(url+'.jpg')
pic=q.read()
save = open('./data/wechat_pic/%d.jpg'%(i,),mode='w+b')
save.write(pic)
q.close()
save.close()
print(f'pic{i} saved!')
downloaded.append(url)
python用1000张照片合成一张_有没有什么惊艳的微信头像?Python一键下载1000张!...相关推荐
- 有没有什么惊艳的微信头像?Python一键下载1000张!
bee君一直以来,对选用一个合适的微信头像,感到比较头疼. 今天bee君为大家推荐1000多张,非常惊艳的能用做微信头像的图片,都已按照类别分好类,文末提供下载方法,相信大家一定能从中找到一款自己喜欢 ...
- Python一键下载1000张惊艳的微信头像
一直以来,对选用一个合适的微信头像,感到比较头疼. 今天为大家推荐1000多张,非常惊艳的能用做微信头像的图片,都已按照类别分好类,文末提供下载方法,相信大家一定能从中找到一款自己喜欢的. 1 req ...
- python -- 计算 平方、乘方、平方根_从零开始学习PYTHON3讲义(二)把Python当做计算器...
<从零开始PYTHON3>第二讲 上一讲我们说过了如何启动Python IDLE集成开发学习环境,macOS/Linux都可以在命令行执行idle3.Windows则从开始菜单中去寻找ID ...
- java、c语言、python、c++的不同之处_总结几点C/C++、Java与Python的区别
1.c++.java和python都是面向对象的编程语言,但是c++和java都是强类型语言,而python是一种弱类型语言 2.垃圾回收机制:c++需要程序员收到回收,而java和python都有自 ...
- python 使用文本注解绘制树节点_整理了 34 个被吹爆了的Python开源框架
点击"Python编程与实战",选择"置顶公众号" 第一时间获取 Python 技术干货! 阅读文本大概需要 5 分钟. 我们从近10000个python开源框 ...
- python采用的编码是什么意思_深入浅出地,彻彻底底地理解Python中的编码
python处理文本的功能非常强大,但是如果是初学者,没有搞清楚python中的编码机制,也经常会遇到乱码或者decode error.本文的目的是简明扼要地说明python的编码机制,并给出一些建议 ...
- 在python中可以使用if作为变量名_变量,注释,缩进,细数Python优雅风 | Python基础连载(二)...
开篇 在之后的几期文章中,你将会陆续学习到Python的六个标准数据类型 不过在此之前,有一些先导内容需要掌握,所以这一期就先来介绍一下这些内容. 文章首发于微信公众号:我将在南极找寻你.专注干货分享 ...
- 用python画几个东西怎么画_一步一步教你如何用Python画一个滑稽
先看一下效果 up主是一个计算机专业的学生,平时喜欢自己学习一些东西,写博客.以前都是在CSDN上写博客,不过我觉得在B站写博客和大家分享一点自己学习的东西也不错嘿嘿.欢迎大家评论或者私信up,一起交 ...
- 用python画雪花 科赫曲线递归_【TCE的编程小讲堂】【Python】【第三期】如何画出科赫雪花?(下)...
大家还记得上期讲的科赫雪花吗?我们上次讲过画出一条边的方法,大家看看代码复习一下 import turtle#包含turtle库 def koch(l): turtle.forward(l / 4)# ...
最新文章
- 合并a[0..mid]和a[mid+1,n-1],其中这两个数组分别有序
- jquery.formValidator表单验证语法
- L1-075 强迫症 (10 分)-PAT 团体程序设计天梯赛 GPLT
- android 11 版本更新内容,android 11怎么更新 android 11更新方法
- 深度学习(二十一)基于FCN的图像语义分割-CVPR 2015
- linux jdk1.8 32位下载永久地址,ubuntu,centos,java
- docker安装JDK
- vue3引入echarts
- Curve fitting C: Non-linear Iterative Curve Fitting中文翻译
- scratch编程 飞翔的小鸟 开发笔记 0604
- dcn网络与公网_DCN网络安全分析
- github托管静态网页
- Processing绘制星空-2-绘制流星
- python快乐数字怎么表达_Python中的快乐数字
- 一种基于SoC和阿里云的智能家居系统设计方案_家电研究报告
- 一个数的所有连续自然数之和
- Windows 7 重装系统
- 服务器u盘安装linux6.7,U盘如何安装centos7系统?U盘安装centos7详细安装图解教程...
- 轻松玩转自动机器学习AutoML:H2O Flow
- Hello hello ~