如何批量下载知乎回答图片
苏生不惑第172 篇原创文章,将本公众号设为
星标
,第一时间看最新文章。
这两天刷知乎看到腾讯的一个回答 有什么可爱的微信头像 ?https://www.zhihu.com/question/310335618/answer/602970433,分享了上百张QQ高清经典头像。
于是想着一次性下载下来(公众号后台回复 知乎
获取下载的QQ头像),下面分享几个批量下载图片工具。
Fatkun
Fatkun是一款内嵌到浏览器的工具;可以帮你方便地从任意网站上批量采集喜欢的图片并迅速完成筛选和保存 http://web.fatkun.cn/extension.html ,支持Chrome、360、QQ、2345、百度、UC、猎豹等所有chrome内核浏览器及Firefox浏览器。
这里下载的是Chrome扩展,安装Chrome扩展方法见之前文章 上不了谷歌如何安装 Chrome 扩展
先拉到网页底部,右键选择批量下载。
全选图片,点下载。
也可以导出所有图片链接 ,格式改为 {LINK} 就是纯链接了,然后用idm这种软件批量下载。
类似的Chrome扩展还有 图片助手 https://chrome.google.com/webstore/detail/imageassistant-batch-imag/dbjbempljhcmhlfpfacalomonjpalpko?hl=zh-CN ,右键提取图片。
可以根据图片类型,分辨率尺寸过滤选择下载的图片。
imagecyborg
https://imagecyborg.com/ 这是个在线网站,输入知乎回答链接即可下载图片。
Python脚本下载
知乎有接口可以获取回答内容,所以使用Python下载就很简单了。
单个回答接口 https://www.zhihu.com/api/v4/answers/602970433?include=is_normal,is_sticky,collapsed_by,suggest_edit,comment_count,collapsed_counts,reviewing_comments_count,can_comment,content,editable_content,voteup_count,reshipment_settings,comment_permission,mark_infos,created_time,updated_time,relationship.is_author,voting,is_thanked,is_nothelp,upvoted_followees;author.is_blocking,is_blocked,is_followed,voteup_count,message_thread_token,badge[?(type=best_answerer)].topics 可以看到content就是回答内容,图片地址也都在里面。
简单的代码如下:
import urllib
import requests
from pyquery import PyQuery as pq
import os
url = 'https://www.zhihu.com/api/v4/answers/602970433?include=is_normal,is_sticky,collapsed_by,suggest_edit,comment_count,collapsed_counts,reviewing_comments_count,can_comment,content,editable_content,voteup_count,reshipment_settings,comment_permission,mark_infos,created_time,updated_time,relationship.is_author,voting,is_thanked,is_nothelp,upvoted_followees;author.is_blocking,is_blocked,is_followed,voteup_count,message_thread_token,badge[?(type=best_answerer)].topics'
headers = {
'Accept': "application/json, text/javascript, */*; q=0.01",
'User-Agent': "",
'Referer': 'https://www.zhihu.com/api/v4/questions/602970433',
}
res = requests.get(url,headers=headers,verify=False).json()
print(res['content'])
content = pq(res['content'])
imgs_url = []
imgs = content('figure noscript img').items()
i = 0
for img_url in imgs:
i+=1
imgs_url.append(img_url.attr('src'))
src = requests.get(img_url.attr('src'),headers=headers,verify=False)
with open('pics/'+str(i)+'.jpg', 'wb') as f:
f.write(src.content)#wget.download(img_url.attr('src'))
print('图片总数:'+str(len(imgs_url)))
执行脚本 Python zhihu.py
,很快就下载完了。
如果想下载所有回答的图片可以使用接口 https://www.zhihu.com/api/v4/questions/310335618/answers?include=data%5B%2A%5D.is_normal%2Cadmin_closed_comment%2Creward_info%2Cis_collapsed%2Cannotation_action%2Cannotation_detail%2Ccollapse_reason%2Cis_sticky%2Ccollapsed_by%2Csuggest_edit%2Ccomment_count%2Ccan_comment%2Ccontent%2Ceditable_content%2Cvoteup_count%2Creshipment_settings%2Ccomment_permission%2Ccreated_time%2Cupdated_time%2Creview_info%2Crelevant_info%2Cquestion%2Cexcerpt%2Crelationship.is_authorized%2Cis_author%2Cvoting%2Cis_thanked%2Cis_nothelp%2Cis_labeled%2Cis_recognized%2Cpaid_info%3Bdata%5B%2A%5D.mark_infos%5B%2A%5D.url%3Bdata%5B%2A%5D.author.follower_count%2Cbadge%5B%2A%5D.topics&limit=5&offset=0&platform=desktop&sort_by=default
最后说几个知乎的使用技巧。
有些回答禁止了复制功能,会提示禁止转载,安装simple allow copy 这个扩展 https://chrome.google.com/webstore/detail/simple-allow-copy/aefehdhdciieocakfobpaaolhipkcpgc 一键搞定,之前文章也介绍过 如何搞定某些网站不让复制文字
知乎小管家头像地址 https://pic4.zhimg.com/v2-85b5868ae1ee114c5818d29201aef708_xl.jpg
地址改为https://pic4.zhimg.com/v2-85b5868ae1ee114c5818d29201aef708_l.jpg 就是一张100*100的缩略图。
改为 https://pic4.zhimg.com/v2-85b5868ae1ee114c5818d29201aef708_r.jpg 就是原始大图,这个跟微博有点类似,之前也介绍过 如何更优雅地使用微博
更多知乎技巧见之前文章 那些你可能不知道的知乎奇技淫巧
大家的点赞和在看转发对我非常重要,如果文章对你有帮助还请支持下, 感谢各位!
公众号后台回复关键词 | 用途 |
---|---|
微信 | 获取你的微信好友头像拼图及查看微信撤回消息 |
b站 | 获取下载b站视频工具及找回被删b站视频方法 |
视频 | 获取下载腾讯,优酷,爱奇艺,微博视频工具及去除logo脚本 |
百度网盘 | 获取加速下载网盘文件方法及查找电影电视剧网站 |
朋友圈 | 获取发空白朋友圈方法和九宫格图片 |
微博 | 获取备份微博工具及分析微博账号数据 |
音乐 | 获取下载音乐工具及在线听歌网站 |
油猴 | 获取油猴脚本 |
谷歌 | 获取安装Chrome扩展方法 |
公众号 | 一键下载公众号所有文章 |
抖音 | 一键下载无水印抖音视频 |