https://github.com/iawia002/annie
程序运行速度比 Python 写的工具提升很多(这不废话吗哈哈哈哈哈哈),下载速度也有提升,针对那些分了片的视频,用了 goroutine,总体速度提升很多
$ annie -c cookies.txt https://www.bilibili.com/video/av20203945/
Site: 哔哩哔哩 bilibili.com
Title: [ 2018 拜年祭单品] 相遇 day by day
Type: video
Quality: 高清 1080P60
Size: 220.65 MiB (231363071 Bytes)
2.06 MiB / 220.65 MiB [>-----------------------------] 0.93% 1.94 MiB/s 1m52s
现在大视频网站只支持 B 站,优酷,YouTube,爱奇艺和芒果 TV
最后,静态编译型语言真 TM 爽 ເ😎ว
1
AlwaysBehave 2018-03-19 20:05:07 +08:00 via Android
正好在计划类似项目
找时间看看 pr 一波 |
2
iawia002 OP @AlwaysBehave 欢迎 PR !
|
3
fhefh 2018-03-19 20:06:28 +08:00
谢谢楼主 学习了~
|
4
iawia002 OP 现在基础的功能都有,断点续传,带 cookies 访问,支持 http 代理和 socks5 代理
|
6
AlwaysBehave 2018-03-19 20:09:24 +08:00 via Android
说个小建议:bilibili 的 key 做成动态获取的
写死 build 很难受 类似的都可以这样做一下🤔 我记得类似的有 bilibili for mac |
7
justfortest 2018-03-19 20:09:29 +08:00
学习了
|
8
FrankAdler 2018-03-19 20:10:13 +08:00
最近在写 go 项目, 参考下
|
10
frozenthrone 2018-03-19 20:11:36 +08:00 via iPhone
求支持 avgle
|
11
iawia002 OP @AlwaysBehave 你是说那个 seckey 吗,那个不能动态获取的,那个是写死的,现在的都不知道是哪位大神从 Android 客户端逆向出来的
|
12
hlwjia 2018-03-19 20:12:59 +08:00
为什么起名 annie,请说出你的故事
|
13
hlwjia 2018-03-19 20:14:10 +08:00
|
14
iawia002 OP 大家如果还记得的话,我是 lulu 的维护者,就是那个 you-get 的 fork,https://www.v2ex.com/t/428150
|
16
anyfc 2018-03-19 20:40:10 +08:00
下载 youku 视频的时候,提示: 客户端无权播放,201
怎么解决 |
17
admirez 2018-03-19 20:41:58 +08:00
为什么起名 annie,请说出你的故事
|
18
pathbox 2018-03-19 20:43:35 +08:00 via iPhone
YouTube 要代理吗?
|
19
expy 2018-03-19 20:54:34 +08:00
用过 lulu,star 感谢一波!
|
20
lixuda 2018-03-19 20:58:01 +08:00
go 代替 python 节奏
|
21
itfanr 2018-03-19 21:15:43 +08:00 via Android
好东西
|
22
moro 2018-03-19 21:22:51 +08:00
学习
|
23
iawia002 OP 哎,刚才回复太快了,被禁了好久啊(哇,很惨啊,我就连回了两条消息),大家的问题我慢慢回吧
@frozenthrone avgle 这是什么网站啊,看名字难道是🌚?我不知道他们的网页或者 api 怎么样,不好评估难度。我知道 pornhub 和 91 的视频都不难🌚 @anyfc 那是因为 ccode 不对优酷出的提示,我都用了多个 ccode 来一个个试了都还不行啊,我呆会儿看看(单元测试为证,昨天都还可以) @admirez 别闹,取名字真的很难 @pathbox 肯定要呀 |
24
bigtan 2018-03-19 21:56:40 +08:00 1
提了个 issue youtube 的视频下载以后,rename 失败;
支持楼主添加 91 |
25
iawia002 OP |
26
winglight2016 2018-03-19 22:16:22 +08:00
怎么控制视频质量呢?我用默认命令下载的视频分辨率是最小的
|
27
mingyun 2018-03-19 22:24:58 +08:00
为什么安装失败
fatal: unable to access 'https://github.com/iawia002/annie/': error:1407742E:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert protocol version package github.com/iawia002/annie: exit status 128 |
28
iawia002 OP @winglight2016 现在不支持选视频质量,但是 annie 都是下的最高清晰度的呀,你下载的哪个地址?
|
29
iawia002 OP @mingyun 咦,你是怎么安装的,go get?,你这个报错信息看起来是网络问题呀,不行就下 https://github.com/iawia002/annie/releases,这个应该是下下来就能跑的
|
30
winglight2016 2018-03-19 22:30:37 +08:00
@iawia002 是我搞错了,一直以为 youtube 上最低都是 720p,谁知道这个是 360p
就这个视频,网页上看是很清晰的: |
31
iawia002 OP @winglight2016 不是我的问题就好哈哈哈哈哈哈
|
32
winglight2016 2018-03-19 22:42:13 +08:00
@iawia002 我正在学 go,还要跟 lz 多学习
|
33
wspsxing 2018-03-19 22:45:27 +08:00
start + 1
楼主厉害啦,自从 fx 57+后 flash-get 不能用了,总想找个或搞个下载 b 站视频的。 |
34
mashirozx 2018-03-19 22:51:57 +08:00
活捉!
|
37
affyun 2018-03-19 23:00:14 +08:00
请问下载 youtube 的 playlist 时能跳过里面失效的视频吗?
|
38
iawia002 OP @affyun 现在 Youtube 还不支持 playlist 下载哦,现在只有 b 站支持 playlist
以后要支持的话应该可以吧,你的意思就是只下载这个列表里面能下载的嘛? |
39
affyun 2018-03-19 23:11:09 +08:00
@iawia002 #38 视频被删除或者设置为私享后就不能访问了。如果 playlist 里有这类视频的话,用 youtube-dl 会到那个视频就停止下载
|
40
cchange 2018-03-19 23:12:55 +08:00
请问是用什么软件开发的? 是 JetBrain 的 go 语言 IDE 吗? 实在是新手
见谅 |
41
iawia002 OP @affyun 哦它应该是 youtube 返回错误它就退出整个程序了,annie 现在还不知道以后这种情况怎么处理哎,以后增加了播放列表功能我再看看能不能实现你的需求吧
|
43
zhongjidalao 2018-03-19 23:30:08 +08:00
you-get 最近不能用了,你这个很厉害,已经点 start
|
45
iawia002 OP @zhongjidalao 你知道 lulu 吗,一个 you-get 的 fork,lulu 应该还是能用的,只是没有 annie 快哈哈哈哈哈哈
|
46
wweir 2018-03-20 07:47:02 +08:00 via Android
Go 替代 python 是波大节奏了,支持一下
|
47
iawia002 OP 谈不上替代 python 吧,只是感觉这个场景适合 Go,需要速度,而且静态语言好维护
|
48
liangzi 2018-03-20 08:13:20 +08:00 via Android
mark 感谢分享
|
49
iawia002 OP 但是 Go 调试起来确实比 python 差太远了啊,还是我 pdb 好用,毕竟解释型语言,可以各种折腾
@cchange 想起来了,调试有个工具叫 Delve,我还没用过,应该比 gdb 好用 |
50
seers 2018-03-20 08:48:35 +08:00
感谢,前两天还用了 lulu
|
51
yedashuai 2018-03-20 09:21:30 +08:00
火速 star,you-get 还在使用,就是从 you-get 开始入了 Python 的坑,看来又要从你这个 Annie 入 go 的坑了!!!
|
52
iawia002 OP Golang 欢迎你 😆
|
53
shuianfendi6 2018-03-20 09:29:55 +08:00
@iawia002 大佬,annie 下 b 站经常下不完,下载 100%了去掉.download 也会提示权限失败,需要提 issue 么
|
54
cozzz 2018-03-20 09:30:48 +08:00 via iPhone
prpr
|
55
iawia002 OP @shuianfendi6 你是说报错了是吧,net/http: request canceled (Client.Timeout exceeded while reading body),这样的报错吗,那是网络原因下载中断了,你再执行一次命令就好了,有断点记录的,会从断的地方开始下
|
56
123s 2018-03-20 09:39:15 +08:00
建议支持 tumblr
|
57
stormwindcity 2018-03-20 09:40:06 +08:00
star
|
58
OMGZui 2018-03-20 09:43:47 +08:00
支持一波
|
59
iawia002 OP |
60
archknight 2018-03-20 09:50:27 +08:00
好厉害。
|
61
missdeer 2018-03-20 10:08:47 +08:00
终于有用 go 写的这种工具了,star 一个
|
62
caoyufei 2018-03-20 10:21:38 +08:00
已 star,在多支持些站点更好
|
63
iawia002 OP |
64
AlwaysBehave 2018-03-20 10:40:53 +08:00 via Android
@iawia002 那个也会变啊… TYPCN 的 Bilibili for mac 就是这样做的啊
|
65
iawia002 OP @AlwaysBehave 那个 key 是算出来的?我一直觉得是 B 站写死的,他们好像定期会更新
|
66
fork 2018-03-20 10:51:34 +08:00
本来想干移植 youtube-dl 这件事, 果然已经有人干了,晚上回家试试,python 的 youtube-dl 确实做的不错的。
|
67
orangeade 2018-03-20 10:58:39 +08:00
python 版上 asyncio 的话下载速度是不是也有提升,我看 requests 作者已经开始为 requests 加入 asyncio 了
|
68
hahasong 2018-03-20 11:05:09 +08:00
youtube-dl 如何把 1080p 视频跟音频合在一起,直接给出的格式里只有 1080p 视频无音轨
|
69
iawia002 OP |
70
ango 2018-03-20 11:45:41 +08:00
厉害,学习一下。star~
|
71
wyd2004 2018-03-20 12:06:26 +08:00
学习一下. 已 star.
|
72
AlwaysBehave 2018-03-20 12:10:45 +08:00 via Android
@iawia002 是解包出来的,TYPCN 虚拟机跑 apk 从内存 dump 出来 key 的,做了自动化
不知道现在还是这个样子不 |
73
iawia002 OP @AlwaysBehave 卧槽这个方法可以啊,🤙🤙🤙
|
74
JhZ7z587cYROBgVQ 2018-03-20 12:16:21 +08:00
速度大概提升了多少啊?一直以为下载工具的瓶颈在网络 io
|
75
mxalbert1996 2018-03-20 12:22:11 +08:00 via Android
B 站支持大会员清晰度吗?支持的话还是相当优秀的
|
76
iawia002 OP @jason0916 具体的没有测试过哎,毕竟编译型语言,各种响应速度都比 Python 快
@mxalbert1996 必须支持啊(前提是你有 B 站大会员的 cookies 啊),你看我上面主题介绍里面那个视频,就是我带我的大会员账号的 cookies 下载的,高清 1080P60,大会员专属。B 站大概是我支持最好的网站了哈哈哈哈哈哈,因为我,iawia002,住 B 站 |
77
jaycee110905 2018-03-20 13:06:33 +08:00
超棒
|
78
lsls931011 2018-03-20 13:30:36 +08:00
我本来也想这么做的 @iawia002
|
79
iawia002 OP @lsls931011 那就一起搞啊
|
80
lsls931011 2018-03-20 13:37:41 +08:00
@iawia002 找到组织了, 找时间开搞
|
81
shuianfendi6 2018-03-20 13:43:28 +08:00
|
82
alittlewhitea 2018-03-20 14:20:55 +08:00
嗯..那个..tumblr 可以吗
|
83
iawia002 OP @alittlewhitea tumblr 的需求这么高的吗 @123s 也提了这个,现在已经支持图片下载了(不过还没发版本),视频的话还要等等,你们的主要需求是图片还是视频呀
|
84
alittlewhitea 2018-03-20 14:30:57 +08:00
@iawia002 嗯..视频
|
85
iawia002 OP @alittlewhitea 我肤浅地问一句,是用来开..开车吗🌚
|
87
iawia002 OP 那用 91 或者 pornhub 开不是更快吗哈哈哈哈哈哈
tumblr 的很多视频都是 vimeo 或者其他网站上的,也就是说要支持 tumblr,我还得先支持 vimeo 那些 有没有人能私聊我一辆车的地址啊,我看下页面的结构,看那种视频是存在 tumblr 上还是外站的 |
88
cevincheung 2018-03-20 15:36:40 +08:00
要是能有个 chrome 插件,正在看哪个视频就点一下自动带 cookies 过去然后就开始下载……美滋滋
|
89
iawia002 OP @cevincheung 想法不错
|
90
xuanyuanaosheng 2018-03-20 17:38:09 +08:00 via Android
mark 一下,有空测试下
|
91
unique 2018-03-20 19:44:33 +08:00 via iPhone
感谢楼主分享,👏👏👏已 star
|
92
iawia002 OP @123s @alittlewhitea 发车了,0.5.0 支持 tumblr 下载图片,站内视频下载( tumblr 很多视频是外链的 vimeo,ins 等等,这些暂不支持)
|
93
123s 2018-03-20 22:02:13 +08:00
好快
|
95
solaro 2018-03-21 10:22:18 +08:00
膜拜大佬
|
97
wwqgtxx 2018-03-21 10:46:32 +08:00
个人感觉这一类下载解析软件对性能要求并不高,剩下就是网络库的优化了
|
100
lixuda 2018-03-21 13:24:14 +08:00
有没有 exe 编译版本
|