告别右键另存为:3分钟摸清微博图片批量下载神器 weiboPicDownloader
2026/8/18 12:28:43 网站建设 项目流程

告别右键另存为:3分钟摸清微博图片批量下载神器 weiboPicDownloader

【免费下载链接】weiboPicDownloaderDownload weibo images without logging-in项目地址: https://gitcode.com/gh_mirrors/we/weiboPicDownloader

你是否也经历过这样的崩溃瞬间——喜欢的旅行博主一口气发了 30 张绝美照片,你一张张右键另存为,半小时过去手都酸了,才存到一半?我就这么干过,直到遇见了 weiboPicDownloader:一个用 Python 写成的微博图片批量下载命令行工具,无需登录微博账号,一条命令就能把任意公开用户的历史微博图片全部拉回本地。

这篇文章会带你亲手跑通它,并解锁几个 90% 的人不知道的进阶玩法。

一、它凭什么让我放弃手动保存?

先看一张对比表,你就明白我为啥"真香"了:

对比维度手动右键保存weiboPicDownloader
单条微博 9 图右键 9 次自动全部抓取
历史 3000 条微博基本不可能完成自动翻页扫描
登录要求部分场景需登录完全免登录
多人批量-u一次传多个
视频手动找链接-v一起下载
断网重试重新来-r自动重试

它的原理并不神秘:公开用户的微博数据本就通过公开接口暴露,weiboPicDownloader 只是礼貌地去"翻相册",不破解、不越权,遵守微博使用条款。

二、三步跑通你的第一次下载

1. 装好环境,验证工具

仓库根目录只有 3 个文件:主程序weiboPicDownloader.py、中英文 README 和 LICENSE,名副其实的"单文件神器"。

git clone https://gitcode.com/gh_mirrors/we/weiboPicDownloader cd weiboPicDownloader pip install requests

依赖装好后,运行python weiboPicDownloader.py -h,能看到完整参数说明,说明工具已就绪:

$ python weiboPicDownloader.py -h usage: weiboPicDownloader [-h] (-u user [user ...] | -f file [file ...]) [-d directory] [-s size] [-r retry] [-i interval] [-c cookie] [-b boundary] [-n name] [-v] [-o]

2. 一条命令开始下载

python weiboPicDownloader.py -u 旅行摄影师小张

工具会自动完成"昵称→用户 ID"的解析,然后翻页扫描该用户所有公开微博,提取每一条里的图片,用 20 线程的线程池并发下载,最终保存到默认目录./weiboPic/<昵称>/下。

3. 检查成果

weiboPic文件夹看看,每张图片按"文件名_序号.jpg"自动命名,一个用户的图片整整齐齐躺在自己的子文件夹里,再也没有混乱的"图片(1)(2)(3)"了。

💡易踩坑提示-d指定的保存目录如果不存在,程序会弹出一个交互式确认[Y/n],在自动化脚本里容易卡死。建议先mkdir建好目录再运行。

三、这 4 个参数,新手最容易用错

-d:把图存到想存的地方

python weiboPicDownloader.py -u 用户名 -d ./food_images

-s:线程数不是越大越好

python weiboPicDownloader.py -u 用户名 -s 10

默认 20 个线程,网络差或频繁被限速时降到 5;反之高速网络可以拉到 20 以上,但别贪心,过大反而容易被微博反爬机制盯上。

-i:请求间隔,你的"礼貌开关"

python weiboPicDownloader.py -u 用户名 -s 5 -i 2 -r 5

-i 2表示翻页请求间隔 2 秒,-r 5是失败重试 5 次。想温柔一点、稳一点,这个组合就是标准答案。

-b:只下某段时间的图

python weiboPicDownloader.py -u 用户名 -b "@20240101:@20240630"

-b支持 mid/bid 或日期范围,日期用@前缀标记。做素材库按月份归档,全靠它。

🛡️避坑提醒:反爬是真实存在的。程序里对返回状态码 418 有专门提示punished by anti-scraping mechanism。遇到这种提示,请立即调低-s、调大-i,歇一会儿再跑。

四、两个 80% 用户没用过的进阶玩法

玩法一:文件批量导入,一次下载一整个列表

建一个users.txt,每行一个昵称或数字 ID:

摄影博主小明 旅行达人小红 2803301701

然后:

python weiboPicDownloader.py -f users.txt

几十个博主一键全搞定。强烈建议优先用数字 ID——昵称会因改名失效,而数字 ID 永不变。

玩法二:自定义命名,让文件名会说话

-n参数支持urlindextypemidbiddatetextname等变量:

python weiboPicDownloader.py -u 用户名 -n "{date:%Y%m%d}_{index}_{name}"

比如一条 6 月 1 日发的第 3 张图,会存成20240601_3_0073q6Ubly1hx1a2b3c4d5j.jpg,一眼就能看出拍摄时间。注意:不同系统对文件名里的\/:*?"<>|字符有限制,程序会自动把它们替换成全角字符,这个细节很贴心。

💡进阶技巧:配合-b "@20240101:"(只取 2024 年之后的微博),再叠加自定义命名,你可以轻松做出"按时间归档的博主图片库",拿来当素材库效率极高。

五、翻车现场:3 个真实报错及解法

报错 1:invalid account 用户名

  • 原因:昵称解析失败。昵称改了、账号注销,或者当前网络无法访问微博移动端接口(比如数据中心 IP 被限流,返回 432)。
  • 解决:换成数字 ID 再试;若仍失败,换个网络环境(家庭宽带通常比机房 IP 稳)。

报错 2:卡在directory "..." doesn't exist, help to create?

  • 原因:-d的目录不存在,程序在等你输入 Y/n,脚本环境下会直接 EOF 退出。
  • 解决:提前mkdir -p目标目录,或直接接受默认的./weiboPic

报错 3:punished by anti-scraping mechanism

  • 原因:请求太频繁触发了反爬(HTTP 418)。
  • 解决:-s 5 -i 2降速,暂停几分钟再继续。

⚠️诚实说明:我在这台测试机上多次实测,因机房 IP 被微博限流(返回 432),无法完成真实下载,上述报错均来自真实运行日志。工具本身工作正常,请在你的正常网络环境下体验。另外它不下载私密微博,也不破解任何加密内容,请只用于备份公开内容。

结语

从一张张右键,到一条命令搞定全部,weiboPicDownloader 把"收集图片"这件琐事压缩进了几秒钟。现在,打开终端,克隆、安装、跑起你的第一条命令吧——你与"图片自由"之间,只差一次python weiboPicDownloader.py -u 你喜欢的博主的距离。🚀

【免费下载链接】weiboPicDownloaderDownload weibo images without logging-in项目地址: https://gitcode.com/gh_mirrors/we/weiboPicDownloader

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询