爱意满满的作品展示区。
jasonkayzk

女票想批量保存微博猫咪图片,就写了个微博图片爬虫下载器~

  •  
  •   jasonkayzk ·
    JasonkayZK · Dec 20, 2020 · 12267 views
    This topic created in 2152 days ago, the information mentioned may be changed or developed.

    Github 地址:

    https://github.com/JasonkayZK/weiboPicDownloader

    输入微博用户 ID,选择下载日期即可:

    weiboPicDownloader_4.png

    Supplement 1  ·  Dec 20, 2020

    整个下载器的实现过程其实挺简单的,有兴趣的可以看我之前总结的过程;

    关于Linux和MacOS的版本,当时就是冲着Electron跨平台去写的,结果尝试编译了几次都有问题;= =

    我本身也不是搞前端的,希望有大佬能出手相助看看是啥个问题;

    Supplement 2  ·  Jan 7, 2021

    用Electron-Vue模板重构了一下代码;

    现在各个平台都能够正常使用npm run dev本地开发,npm run build编译了;

    94 replies  •  2021-06-09 18:34:14 +08:00
    wushigejiajia01
    wushigejiajia01
    Dec 20, 2020 via Android
    1
    可以爬小姐姐吧?
    那真是好东西了
    jasonkayzk
    jasonkayzk
    OP
    Dec 20, 2020
    2
    @wushigejiajia01 只要是微博能看到的图片都是可以爬的。但是不能去水印;
    Tyuans
    Tyuans
    Dec 20, 2020
    3
    批量搬运小姐姐图片到外网
    jasonkayzk
    jasonkayzk
    OP
    Dec 20, 2020
    4
    @Tyuans 哈哈,可以可以~
    anxn
    anxn
    Dec 20, 2020 via Android
    5
    Linux 能不能也给一份 release,我编译会报错
    whatalittleboy
    whatalittleboy
    Dec 20, 2020
    6
    体积有点大,解压后 160 MB,但启动速度挺快的👍👍
    s1th
    s1th
    Dec 20, 2020 via iPhone
    7
    别光说,小姐姐图片多的微博是哪个
    jasonkayzk
    jasonkayzk
    OP
    Dec 20, 2020
    8
    @whatalittleboy 体积大是因为 Electron 编译之后本身就太大,项目挺简单的也没用啥东西。= =
    liyiecho
    liyiecho
    Dec 20, 2020❤️1
    9
    hfJ433
    hfJ433
    Dec 20, 2020❤️1
    10
    @s1th 6032474791 爬起来
    wangdefu
    wangdefu
    Dec 20, 2020 via Android
    11
    @liyiecho 这个可以定时 比如每天下载某个固定用户的微博吗

    我关注了一个博主 经常几天就清空
    jasonkayzk
    jasonkayzk
    OP
    Dec 20, 2020
    12
    @anxn 我试着编译一下看看= =
    jasonkayzk
    jasonkayzk
    OP
    Dec 20, 2020
    13
    @wangdefu 如果是 py 脚本的话,设置个 crontab 丢到服务器上跑呗;
    shgdym
    shgdym
    Dec 20, 2020
    14
    py 写的 很简单的一个微博爬虫: https://github.com/shgdym/weiboSpider
    shgdym
    shgdym
    Dec 20, 2020
    15
    qxsd
    qxsd
    Dec 20, 2020 via Android
    16
    有可以爬评论图片的吗
    wangdefu
    wangdefu
    Dec 20, 2020 via Android
    17
    @shgdym 有点意思
    会不会喝茶啊
    jasonkayzk
    jasonkayzk
    OP
    Dec 20, 2020
    18
    @qxsd 这个也可以爬,只是稍微麻烦一些了;你可以直接 Fork 这个仓库,然后修改鸭!
    crab
    crab
    Dec 20, 2020
    19
    时间范围判断不只要大于等于开始时间,也还要判断一个小于等于结束时间吧。
    renyiqiu
    renyiqiu
    Dec 20, 2020
    20
    不错,用起来
    kingcos
    kingcos
    Dec 20, 2020
    21
    如果是已编辑是不是就爬不到了?
    jasonkayzk
    jasonkayzk
    OP
    Dec 20, 2020
    22
    @kingcos 这个…,我也不玩微博= =,我也不知道啊!你试试 /呆滞
    justfun
    justfun
    Dec 20, 2020
    23
    杀鸡焉用宰牛刀 😅😂。正好昨天用 PHP 写了个微博爬虫 备份了下自己微博的数据。体积才不到 20KB
    limuyan44
    limuyan44
    Dec 20, 2020
    24
    几年前的一个深夜为了爬微博搞笑排行榜的下面的表情包写了个,微博展示的图片算是又压了一遍,记得路径改成 large 就好了,后来倒是爬了不少小姐姐。。
    loading
    loading
    Dec 20, 2020 via Android
    25
    @s1th 对对对,一般这种里面最有价值的就是 list,这居然没有…
    jasonkayzk
    jasonkayzk
    OP
    Dec 20, 2020
    27
    @justfun hhhh~ 正好前段时间粗略看了下 Electron,就写了一个呗;😅😅
    JCZ2MkKb5S8ZX9pq
    JCZ2MkKb5S8ZX9pq
    Dec 20, 2020
    28
    我也造过这个轮子,我记得获取微博的时候是需要登陆过的 cookie 。然后下载图片没问题,但下载视频的地址没搞(入口用的 wap 版)。

    另外借楼问一下,之前搞的时候发现过被夹的图片(会变成灰色图),获得 id 之后也能看到原图。但过太久了,忘了怎么搞了。有大神知道嘛?
    jasonkayzk
    jasonkayzk
    OP
    Dec 20, 2020
    29
    @JCZ2MkKb5S8ZX9pq 我的这个是不需要 cookie 的,用微博移动版: https://m.weibo.cn/ ,可以看看这个能不能实现= =
    PbCopy111
    PbCopy111
    Dec 20, 2020
    31
    @wangdefu #11 必须可以定时。。。我一直在用,哈哈哈,你看看说明
    5966
    5966
    Dec 20, 2020 via iPhone
    32
    不错,问问,我就想找一个命名规则是根据微博(首句)内容命名的!
    YouLMAO
    YouLMAO
    Dec 20, 2020 via Android
    33
    你确定 pussy 是猫咪,还是对你意有所指
    jasonkayzk
    jasonkayzk
    OP
    Dec 21, 2020
    34
    @5966 这个改一下源码就好了,在寻找图片链接的时候,同时判断一下微博的内容是否符合你的要求就行了!
    someonedeng
    someonedeng
    Dec 21, 2020
    35
    @YouLMAO 老蛇皮了
    liumxz
    liumxz
    Dec 21, 2020
    36
    没下载地址啊
    liumxz
    liumxz
    Dec 21, 2020
    37
    看到了 我的
    lwlizhe
    lwlizhe
    Dec 21, 2020
    38
    呵,一看就是假的,试都不用试





    会写程序的会有女朋友?[手动狗头]
    jasonkayzk
    jasonkayzk
    OP
    Dec 21, 2020
    39
    @lwlizhe 啪的一下,很快啊!
    akaayy
    akaayy
    Dec 21, 2020 via Android
    40
    @justfun 能分享学习一下吗
    skygee
    skygee
    Dec 21, 2020
    41
    这个不怕封 ip 吗
    shgdym
    shgdym
    Dec 21, 2020
    42
    @wangdefu 在我自己服务器上跑了一年多了
    jasonkayzk
    jasonkayzk
    OP
    Dec 21, 2020
    43
    @skygee 如果不是深度使用,以 JS 单线程和设置的延时来看,这点爬虫流量应该算不了什么吧= =;
    night98
    night98
    Dec 21, 2020
    44
    能爬原图吗?还是普通大图?原图大小一般 3-5Mb 大小
    jasonkayzk
    jasonkayzk
    OP
    Dec 21, 2020
    45
    @night98 应该是原图,是请求返回 json 的"large"字段;
    JCZ2MkKb5S8ZX9pq
    JCZ2MkKb5S8ZX9pq
    Dec 21, 2020
    46
    @jasonkayzk
    试了下倒真是,这个个人首页需要登录,全部微博反而不需要权限了。
    这个你试下来有频度限制嘛,访问多了会出 418 错误什么的嘛。
    jasonkayzk
    jasonkayzk
    OP
    Dec 21, 2020
    47
    @JCZ2MkKb5S8ZX9pq 暂时没发现频度限制,本来想嵌入一个 go 并发下载的,后来想了想,万一太猛被封 IP 了呢,所以还是用 JS 吧;
    JCZ2MkKb5S8ZX9pq
    JCZ2MkKb5S8ZX9pq
    Dec 21, 2020
    48
    @jasonkayzk

    我看了看 log,这个 mobile 版的我也抓过。不过去年请求参数限制过一阵子。所以改用 wap+有效 cookie 了。

    # 20190717 已失效 改用 token 验证 尚未破解 目前只能获得前 10 条

    但是现在请求参数反而简化了。感觉说不定啥时候微博又会变。
    adm7n
    adm7n
    Dec 21, 2020
    49
    微博有个好友圈功能,只有互相关注了才能看到好友圈内的微博,请问这种情况是否可以下载图片(我的账号有好友圈权限)。
    fitbit
    fitbit
    Dec 21, 2020
    50
    她可能只是想让你买只猫
    jasonkayzk
    jasonkayzk
    OP
    Dec 21, 2020❤️1
    51
    @JCZ2MkKb5S8ZX9pq 哈哈,这个倒是有可能;爬虫这种一直都不稳定;= =
    jasonkayzk
    jasonkayzk
    OP
    Dec 21, 2020
    52
    @adm7n 这个估计不行,得用 cookie 的方式;可以参考其他人发的解决方案;
    jasonkayzk
    jasonkayzk
    OP
    Dec 21, 2020
    53
    @fl2d 养了的,哈哈
    justfun
    justfun
    Dec 21, 2020
    54
    @akaayy 极其的简陋😂 主要微博返回的 json 太详细了
    https://github.com/scriptway/weibo_backup
    nspih
    nspih
    Dec 21, 2020
    55
    年轻人不讲武德,居然来爬、来偷袭我 69 岁老同志的微博。这好吗?这不好。希望你耗子尾汁
    ab
    ab
    Dec 21, 2020 via iPhone
    56
    有点意思啊
    justfun
    justfun
    Dec 21, 2020 via iPhone
    57
    @adm7n 可以的 有 cookie 就行。参考我楼上发的 可以爬到
    jasonkayzk
    jasonkayzk
    OP
    Dec 21, 2020
    58
    @ab 谢谢夸奖,哈哈
    jasonkayzk
    jasonkayzk
    OP
    Dec 21, 2020
    59
    @nspih 二百多公斤的英国大理石都爬不动我的一个微博;
    JCZ2MkKb5S8ZX9pq
    JCZ2MkKb5S8ZX9pq
    Dec 21, 2020
    60
    @justfun

    请问这个接口的来源是哪一端?
    因为微博入口太多,你提到了取 header,可以考虑附上参考地址,因为各个入口的 header 可能不大一样。
    justfun
    justfun
    Dec 21, 2020
    61
    @JCZ2MkKb5S8ZX9pq PC Web 端 。https://weibo.com/ 到这里登录 。如果是旧版界面的话 右上角头像偏下的位置有一个立即体验新版微博的入口
    jackrebel
    jackrebel
    Dec 21, 2020
    62
    这个是个好玩的东西。
    jasonkayzk
    jasonkayzk
    OP
    Dec 21, 2020
    63
    @jackrebel 哈哈,谢谢夸奖~
    terrywater
    terrywater
    Dec 21, 2020
    64
    @wushigejiajia01 爬妹子? 好有画面感。上攀双峰,下探双叶。
    terrywater
    terrywater
    Dec 21, 2020
    65
    @jasonkayzk 你闪了吗?你没有闪!
    qzhai
    qzhai
    Dec 22, 2020
    66
    MD, 有女票又有猫
    iyg429
    iyg429
    Dec 24, 2020 via iPhone
    67
    有没有微博视频下载?
    iyg429
    iyg429
    Dec 24, 2020 via iPhone
    68
    微博好多想看的我连续剧 还是高清的。如果可以选定日期下载好完美
    jasonkayzk
    jasonkayzk
    OP
    Dec 24, 2020
    69
    @iyg429 是可以添加视频下载的,我请求的那个 json 里面有视频的流地址;但是一般视频挺大的我就没有加= =;
    mojimomo
    mojimomo
    Dec 24, 2020
    70
    我批量下了很多图片,但是发现个问题,很多图片下载不完整都是一条条线。是不是下载的模块还需要优化下?
    jasonkayzk
    jasonkayzk
    OP
    Dec 24, 2020
    71
    @mojimomo 可能是因为图片木有下载完;等全部下载完应该就全显示了;如果下了一半,会出现这个问题;
    overthemoon
    overthemoon
    Dec 24, 2020
    72
    收藏了,缺一个叫我帮忙下载微博图片的女朋友
    jasonkayzk
    jasonkayzk
    OP
    Dec 24, 2020
    73
    @overthemoon 哈哈,肯定会有的!
    mojimomo
    mojimomo
    Dec 25, 2020
    74
    @jasonkayzk 应该是完全下载完的了,因为进度条都显示完成了。
    这个估计是我用过的体验最好的微博下载了
    界面好看加上图片有日期
    就是这个图片下载有问题,希望能够完善一下
    dongxy688
    dongxy688
    Dec 25, 2020
    75
    爬下来放外网卖了
    jasonkayzk
    jasonkayzk
    OP
    Dec 25, 2020
    76
    @dongxy688 别把,是个狼人!
    jasonkayzk
    jasonkayzk
    OP
    Dec 25, 2020
    77
    @mojimomo 多谢夸奖哈,我最近准备回家。回家之后,看看能不能重构一下代码,把这个修复一下;顺便支持跨平台!
    Jamestone
    Jamestone
    Dec 27, 2020
    78
    @Raynard 好多都反馈不能用了,我安装后也不能用
    jasonkayzk
    jasonkayzk
    OP
    Jan 7, 2021
    79
    @anxn Linux 版本已经搞定了;
    jasonkayzk
    jasonkayzk
    OP
    Jan 7, 2021
    80
    用模板重构了代码,加上了 Linux 和 Mac 的 Release ;
    anxn
    anxn
    Jan 8, 2021 via Android
    81
    @jasonkayzk 已用上,多谢
    ririliu
    ririliu
    Jan 25, 2021
    82
    一直会有 js 报错:
    Uncaught Exception:
    Error: read ECONNREST
    at _errnoException(util.js:1024:11)
    at TLSWrap.onread(net.js:615:25)
    jasonkayzk
    jasonkayzk
    OP
    Jan 26, 2021
    83
    @ririliu 没遇见过这个错误啊~下最新的版本试试?

    https://github.com/JasonkayZK/weiboPicDownloader/releases
    ririliu
    ririliu
    Jan 26, 2021
    84
    @jasonkayzk 我用的就是这个版本,报错的图片我查看了下会不完整(下面有一部分是没有内容的),是和网络有关系?不知道能否加个重试的机制,某张图片重试 n 次还失败就跳过,因为现在这样报错每次弹出来我都得点一下,下载才能继续,我下的某个微博比如 2000 多张图片,就得一直守着点了几十次报错的弹窗
    jasonkayzk
    jasonkayzk
    OP
    Jan 27, 2021
    85
    @ririliu 图片下载不完全应该就是网络的原因了,这个问题我也碰到过。这个问题我看一下怎么解决吧。在下一个版本解决了!
    ririliu
    ririliu
    Feb 1, 2021
    86
    @jasonkayzk 已经更新了吗? releases 里面没看到
    jasonkayzk
    jasonkayzk
    OP
    Feb 3, 2021 via Android
    87
    @ririliu 最近没什么时间,在搞毕设…!😓
    moonkiller
    moonkiller
    Feb 13, 2021
    88
    @jasonkayzk 求支持视频😭
    jasonkayzk
    jasonkayzk
    OP
    Feb 14, 2021
    89
    @moonkiller 会考虑添加视频;
    ririliu
    ririliu
    Mar 8, 2021
    90
    还会更新嘛。。。
    jasonkayzk
    jasonkayzk
    OP
    Mar 8, 2021 via Android
    91
    @ririliu 会更新,但是现在在搞毕业论文。估计要等一段时间了。
    ririliu
    ririliu
    May 19, 2021
    92
    @jasonkayzk 呃,我是不是得自己动手改代码了...
    jasonkayzk
    jasonkayzk
    OP
    May 19, 2021
    93
    @ririliu #92 不好意思哈,最近都没在搞这个= =,估计还要一段时间。如果你比较急的话可以 Fork 下来自己改~
    ririliu
    ririliu
    Jun 9, 2021
    94
    @jasonkayzk https://github.com/JasonkayZK/weiboPicDownloader/issues/5, 这个是什么问题呢,运行不起来
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   2081 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 108ms · UTC 15:05 · PVG 23:05 · LAX 07:05 · JFK 10:05
    ♥ Do have faith in what you're doing.