#1 - 2022-3-2 03:57
NekoNull
联动 bangumi有一天会关闭么? Sai 老板的指引,使用 Bangumi API 写了一些 Python 脚本,一个导出数据到 JSON,一个把 JSON 转换成稍微可以读的 HTML。

项目地址:https://github.com/jerrylususu/bangumi-takeout-py

2023/8/2 更新:现已支持 Github Actions,具体使用请参考 README
2022/12/1 更新:备份工具使用量过大,造成 Bangumi 全站缓慢,被 Sai 吐槽了。已经减缓请求频率,备份耗时可能增加。
2022/6/22 更新:欢迎尝试实验性项目 Bangumi Takeout More,现已支持小组讨论、日志、目录导出。
2022/5/24 更新:现已支持增量导出和导出至 CSV。
2022/5/10 更新:因为上游 API (Bangumi API) 的收藏接口出现了一个 Bug,2022/3/6 之后导出的数据可能存在评论错乱问题(指多个条目下有重复的「个人评价」)。这个 Bug 现在已经被修复。如果发现自己的导出记录中存在此类问题,您可能需要重新导出一次。
2022/3/3 更新:🎉现已支持在 Colab 上运行,无需任何本地部署!点此尝试:

结果大概长这样(示例链接):


欢迎各路大触 PR !也欢迎各位用自己的账户测试,因为我自己点的格子还挺少的(示例文件做了裁剪,自己实际上不到 100 个),所以肯定有部分条目是有问题的,只是我现在发现不了 (bgm38)
#2 - 2022-3-2 06:37
(V1046-R MAHORO)
支持,拿自己账号试了下看上去要跑至少几十分钟的样子
另外现在这个输出感觉略怪,中间刷一堆信息,用tqdm的意义好像不大了(bgm38)
#2-1 - 2022-3-2 14:45
NekoNull
我自己的测试环境下,100个左右格子大概2分钟,几十分钟说明是点格子大佬 (bgm38)。目前执行起来比较慢是为了防止打爆 API server,手动做了限流,每个请求之间至少会间隔 200 ms。楼下的另一位开发者指出了可以用现成的 Archive 库,理论上可以减少 ~60% 请求。
#2-2 - 2022-3-2 18:20
NekoNull
新版本支持用 bangumi/Archive 的数据了,应该可以快不少
#3 - 2022-3-2 07:20
(天生万物以养人,人无一物以报天)
这些ep啥的可以直接用 https://github.com/bangumi/Archive
#3-1 - 2022-3-2 14:42
NekoNull
感谢!之前没有发现这个 repo,不过感觉国内用户下载 Github Releases 可能需要一些特殊操作
#3-2 - 2022-3-2 17:56
NekoNull
已添加对 bangumi/Archive 的支持,不过似乎 Archive 里的数据和 API 得到的数据存在略微差异?API 上似乎 episode type 只有 0,1,2,3(本篇、SP、OP、ED),但是 Archive 里还有 4 和 6(预告/宣传/广告、其他)。
#3-3 - 2022-3-2 22:07
bangumi大西王
NekoNull 说: 已添加对 bangumi/Archive 的支持,不过似乎 Archive 里的数据和 API 得到的数据存在略微差异?API 上似乎 episode type 只有 0,1,2,3(本篇、SP、OP...
我好久没见到4和6了,等着在API里加上。
#3-4 - 2022-3-2 22:09
NekoNull
Trim21 说: 我好久没见到4和6了,等着在API里加上。
多谢!subject_id=176478, subjec_id=158434,这是我这里会产生 4 和 6 的两个条目
#3-5 - 2022-3-4 05:27
bangumi大西王
NekoNull 说: 多谢!subject_id=176478, subjec_id=158434,这是我这里会产生 4 和 6 的两个条目
顺便建议改一下默认UA
#3-6 - 2022-3-4 05:35
bangumi大西王
NekoNull 说: 多谢!subject_id=176478, subjec_id=158434,这是我这里会产生 4 和 6 的两个条目
158434没有章节啊
#3-7 - 2022-3-4 19:54
NekoNull
Trim21 说: 顺便建议改一下默认UA
现在已经改成 `bangumi-takeout-py` 了
#3-8 - 2022-3-4 19:54
NekoNull
Trim21 说: 158434没有章节啊
抱歉,似乎弄错了,应该是 subject_id=9912。以及有其他用户提了 PR,似乎还有 episode_type=5,类型为 MAD
#3-9 - 2022-3-4 20:09
bangumi大西王
NekoNull 说: 抱歉,似乎弄错了,应该是 subject_id=9912。以及有其他用户提了 PR,似乎还有 episode_type=5,类型为 MAD
我都加上了已经
#4 - 2022-3-2 09:56
(。´-д-)
HTML不错~
要是能不引用外部资源就更好了,完全离线可用
#4-1 - 2022-3-2 14:44
NekoNull
目前使用的外部资源主要是 Bootstrap 4 的 JS 和 CSS,以及 jQuery 和 popper.js (前端苦手 (bgm38)。如果需要生成完全自包含的 HTML,暂时可以用 SingleFile 之类的扩展。(可能之后会改进)
#5 - 2022-3-2 09:59
(亡死来招会但人迷爱可然虽我。)
(bgm38)同样都是写Python的程序员,为什么你们这么优秀。
#6 - 2022-3-2 10:39
(『一言以蔽之,就是「爱」!』)
这个好。
#7 - 2022-3-2 11:01
真不错,能添加到超合金组件里就更好了(bgm24)
#7-1 - 2022-3-2 14:46
NekoNull
理论上超合金组件应该是可以走其他思路实现的,例如拼接一个超大 HTML,然而本人前端经验不是很足,可能还得其他大触来协助了 (bgm38)
#8 - 2022-3-2 14:44
(Dream a dream)
收藏
#9 - 2022-3-2 16:00
mark
#10 - 2022-3-2 16:07
(终生处男)
mark
#11 - 2022-3-2 18:36
(学算法竞赛的普通高中生一名 Codeforces&洛谷同名)
大佬nbnb
#12 - 2022-3-2 18:51
(星。。星爆气流斩!)
很强
#13 - 2022-3-2 21:59
(我长大了要发明7G)
好~~~~
#14 - 2022-3-2 22:15
(‮rettiw‭t)
删除了回复
#15 - 2022-3-2 22:47
(原理死者)
太棒了。
#16 - 2022-3-2 23:40
mark一下😯
#17 - 2022-3-3 19:45
2022/3/3 更新:🎉现已支持在 Colab 上运行,无需任何本地部署!点此尝试:
#18 - 2022-3-3 19:54
(五更残夜 瑠璃耀月)
好耶!
#19 - 2022-3-3 20:51
(情更怯)
以前写过导入和导出 csv 的工具
https://greasyfork.org/zh-CN/scr ... lection-export-tool
#19-1 - 2022-3-3 20:55
NekoNull
赞!作为摘要挺好的,之后大概可以看看能否增加一个导出成类似于你的工具得到的 csv 的组件。只是我自己这个也会获取进度和分集信息,来在本地显示点过的格子 (bgm38)
#19-2 - 2022-5-24 23:07
NekoNull
似乎您的工具导出内容不会包含非动画的条目?尝试参考您的表格导出格式时发现的 (bgm38)
#19-3 - 2022-5-25 18:22
拿月亮自刎
NekoNull 说: 似乎您的工具导出内容不会包含非动画的条目?尝试参考您的表格导出格式时发现的
现在做的是动画、图书、游戏等页面的单独导入和导出。
没有做一次性的导出和导入所以的动画、图书和游戏。

另外你点入任何用户收藏页面,都可以导出ta的收藏。
#20 - 2022-3-3 21:05
加个按时间/评分排序?
#20-1 - 2022-3-3 21:28
NekoNull
目前默认排序是按照标注(点格子)时间从旧到新。如果需要加其他排序/筛选,需要更复杂的前端支持,可能得等前端大佬提 Pull Request 了
#21 - 2022-3-4 08:50
(懒到极致便是不在乎,对一切人、事、物的漠然 ...)
赛博焦虑(bgm38)
#22 - 2022-3-4 11:39
(Bangumi ❤er)
ohno,generate.py报错了(bgm38),只得到了json
看了看报错的问题,我收藏了3个条目,现在已经被锁定了。网页虽然还看得到,但是 Bangumi Archive好像获取不到的样子...
少女与战车 爱里寿战争!
北欧妹子日本好吃惊
亲吻那片花瓣 玲绪麻衣日记
获取到的json
{'subject_id': 182792, 'subject_type': 2, 'rate': 0, 'type': 2, 'comment': None, 'tags': ['2016'], 'ep_status': 0, 'vol_status': 0, 'updated_at': '2019-07-29T01:03:42+00:00', 'private': False, 'subject_data': None, 'ep_data': {}, 'progress': None}

subject_data是None,代码找不到key值,于是报错(bgm38)
虽然已经锁定了,但是不想就这么删除收藏。希望猫空桑可以修复,谢谢
#22-1 - 2022-3-4 20:36
NekoNull
欢迎回报 Bug!你的诊断是正确的,Bangumi Archive 内没有对锁定条目的收录,因此导致了这一问题。在新版本中暂时用本地+远端结合的方式处理了,如果本地数据缺失则会再请求远端。请使用新版本再试试。
#22-2 - 2022-3-5 11:57
年轮蛋糕
NekoNull 说: 欢迎回报 Bug!你的诊断是正确的,Bangumi Archive 内没有对锁定条目的收录,因此导致了这一问题。在新版本中暂时用本地+远端结合的方式处理了,如果本地数据缺失则会再请求远端。请使用新版本...
多谢修复,已经成功导出了。
这样就不怕bangumi突然关站啦(bgm38)
#23 - 2022-3-5 11:40
这个和油猴上收藏到导出的有啥区别
[来自Bangumi for android] 获取
#23-1 - 2022-3-5 21:09
NekoNull
不太确定你指的是哪一个脚本?如果你指的是 #19 的脚本的话,本贴中的工具导出的内容更完整一些(包含具体的分集格子数据),且理论上可以通过写其他的转换器得到不同的呈现形式。
#24 - 2022-3-6 10:49
(只是喜欢看动画罢了)
mark
#25 - 2022-3-6 12:20
好用,感谢!
#26 - 2022-5-10 16:04
(不长记性地来得好啊!尽情的,满怀梦想的,享受吧。 ...)
试着用了一下 评论不然是消失了不然是同一条评论被对应在几十个条目上(bgm38)
#26-1 - 2022-5-10 17:49
NekoNull
听起来可能是一个 bug。方便的话可以在 Github 项目内新建一个 issue 并提供相关文件(如 takeout.json)。如果的确是我这边的问题的话,我会试着去解决的。
#26-2 - 2022-5-10 18:28
#26-3 - 2022-5-10 18:34
苍旻白轮
NekoNull 说: 听起来可能是一个 bug。方便的话可以在 Github 项目内新建一个 issue 并提供相关文件(如 takeout.json)。如果的确是我这边的问题的话,我会试着去解决的。
提交了一份issue 希望能帮上忙(bgm114)
#26-4 - 2022-5-10 22:32
NekoNull
笑颜の行方 说: +1
这是上游 bug,现在已经修复了
#27 - 2022-5-10 16:07
(Time to mix drinks and change lives.)
妙不可言,mark
#28 - 2022-5-10 18:20
(哈哈,目前还是萌新一枚~)
标记下!
#29 - 2022-5-10 20:27
感谢,导了快一个小时终于导出了,列表好长
#29-1 - 2022-5-10 20:53
NekoNull
现在导出有点问题,和上游 API 相关,可能需要修复后重新导出一次 (bgm38)
#29-2 - 2022-5-10 22:32
NekoNull
问题已经修复了,不过可能需要重新导出一次,不然可能会出现评论错乱的问题 (bgm38)
#30 - 2022-5-10 22:34
Update (2022/5/10):因为上游 API (Bangumi API) 的收藏接口出现了一个 Bug,2022/3/6 之后导出的数据可能存在评论错乱问题(指多个条目下有重复的「个人评价」)。这个 Bug 现在已经被修复。如果发现自己的导出记录中存在此类问题,您可能需要重新导出一次。

更多信息:https://github.com/jerrylususu/bangumi-takeout-py/issues/5
#31 - 2022-5-13 00:29
mark
#32 - 2022-5-13 15:08
几个问题
1. 当导出的数据太多,需要运行数十分钟。能否对旧数据进行更新,而不是完全重新导出?
2. 当HTML太长时,很容易使浏览器没有反应。
3. 能否导入数据?
#32-1 - 2022-5-13 15:23
NekoNull
1. 这是可行的,理论上可以对前一次和这次的数据diff,从而只更新新增/修改的数据。主要耗时的部分应该是收视进度获取,对现有的程序(fetch 部分)做一些修改应该就可以实现。
2. 我前端技能树点的不是很多,当前选择完全输出至 HTML 只是因为实现起来比较简单。另一种方式可能是实现一个类似于「数据浏览器」的前端网页,选择导出的 json 文件之后动态加载。这部分可以通过写其他的 generator 实现,其他开发者也可以自己实现。(另:太长指的是多少?千级?)
3. 如果指的是从其它网站导入数据,会存在需要把数据关联到 Bangumi 对应条目的问题。而如果指的是重新导入此前用本工具导出的数据,我暂时想不到什么场景下会需要这一功能,欢迎回复讨论。
#32-2 - 2022-5-13 15:39
用户
NekoNull 说: 1. 这是可行的,理论上可以对前一次和这次的数据diff,从而只更新新增/修改的数据。主要耗时的部分应该是收视进度获取,对现有的程序(fetch 部分)做一些修改应该就可以实现。
2. 我前端技能树点...
谢谢答复。
2. 一个ACG长老,完全有可能收集数以万计的条目。
3. 同步用户数据,当你在旧账户和新账户中分别有相当数量的条目,想要合并时,这个功能就会发挥作用。
#32-3 - 2022-5-13 15:56
NekoNull
用户 说: 谢谢答复。
2. 一个ACG长老,完全有可能收集数以万计的条目。
3. 同步用户数据,当你在旧账户和新账户中分别有相当数量的条目,想要合并时,这个功能就会发挥作用。
2. 看来是我估计少了。这种情况可能的确上分页比较合适,不过担心会破坏单文件 HTML 的便携性。如果依然要保持单文件的话,可能要内嵌一个巨大的 JSON 对象,或者进行一定程度的压缩。
3. 对于这一点,理论上可以在生成 HTML 的时候,从多个 takeout.json 中获取数据,相当于本地合并。如果直接修改 Bangumi 数据,感觉有可能触发 API 速率限制。
#32-4 - 2022-5-13 19:58
用户
NekoNull 说: 2. 看来是我估计少了。这种情况可能的确上分页比较合适,不过担心会破坏单文件 HTML 的便携性。如果依然要保持单文件的话,可能要内嵌一个巨大的 JSON 对象,或者进行一定程度的压缩。
3. 对于这...
我使用过 #19 的用户脚本,发现它非常方便。它似乎还带有一个导入功能,但我还没有试过。
#19 的用户脚本是以 CSV 格式导出的,后来又更新为 .xlsx 格式,所以可以很容易地在电子表格软件中使用。
它似乎完全满足了我对用户数据迁移的需要。它输出的数据相对较少,而且不能记录你看过多少集。我认为可以用一种方法来记录数据,创建一个新的字段,数据格式为 "EP 001~009, 011~013; SP 001~005"。
我没有学过编程,不能顺利地将 json 格式导入电子表格。我认为 CSV 格式已经足够用于迁移用户数据,而且在电子表格中排列、汇总比HTML格式更方便。
我认为条目的详细信息(例如每一话的标题、歌曲的曲目列表等)应该以另一种方式存储,导出仅仅记录需要的数据。
#32-5 - 2022-5-13 22:43
NekoNull
用户 说: 我使用过 #19 的用户脚本,发现它非常方便。它似乎还带有一个导入功能,但我还没有试过。
#19 的用户脚本是以 CSV 格式导出的,后来又更新为 .xlsx 格式,所以可以很容易地在电子表格软件中使...
takeout.json 中包含了所有数据,本身也足够通用,不过面向普通用户的操作便携性也的确是问题。已经将生成 csv 的需求加入 issue,但不太确定具体需要包含哪些字段。在 #19 脚本上加入一个「已完成分集」?如果有更多描述,欢迎在 issue 链接讨论,或是在本帖/站内信交流。
https://github.com/jerrylususu/bangumi-takeout-py/issues/6
#32-6 - 2022-5-14 00:11
用户
NekoNull 说: takeout.json 中包含了所有数据,本身也足够通用,不过面向普通用户的操作便携性也的确是问题。已经将生成 csv 的需求加入 issue,但不太确定具体需要包含哪些字段。在 #19 脚本上加入...
我基本上没有任何需求。目前我的需求是导出和导入最收藏的条目,以及 “已完成分集” 的信息。
当然,有些人可能希望能够导出他们自己的短评论(吐槽)、长评论、Tags 等。有些人希望在 ep 下留下自己与他人的讨论。
我认为只要是用户自己写的,就可能是有意义的。但要导出所有的讨论应该是很困难的,如果有太多的收藏,数据会变得很大。
至于可能触发API限制的导入,我认为可以 "愚公移山",每天保存100条信息,10天保存1000条信息。
#32-7 - 2022-5-24 22:57
NekoNull
用户 说: 我基本上没有任何需求。目前我的需求是导出和导入最收藏的条目,以及 “已完成分集” 的信息。
当然,有些人可能希望能够导出他们自己的短评论(吐槽)、长评论、Tags 等。有些人希望在 ep 下留下自己与...
hi! 刚才发布了新版本,新增了增量导出以及导出至 CSV。如果可以的话请试试看吧!(但是目前还没确定分集的最佳表现形式,欢迎 feedback)
#32-8 - 2022-5-25 22:14
用户
NekoNull 说: hi! 刚才发布了新版本,新增了增量导出以及导出至 CSV。如果可以的话请试试看吧!(但是目前还没确定分集的最佳表现形式,欢迎 feedback)
感觉基本上满足了需求,非常好。
        如果继续使用现在的完成度表达方法,感觉可以把“完成的集数”和“总集数”分成两列。“完成度(百分比)”可以从电子表格中计算出来,可以考虑删除这一栏。
        关于分集的表现形式,我在上面举了一个例子:"EP 001~009, 011~013; SP 001~005"。意思是我已经完成了正片的第 1~9 话,11~13 话,而第 10 话未看。另外完成了 SP 1~5 话。我所想到的就是这种表示方法,供参考。
#32-9 - 2022-5-26 20:04
NekoNull
用户 说: 感觉基本上满足了需求,非常好。
        如果继续使用现在的完成度表达方法,感觉可以把“完成的集数”和“总集数”分成两列。“完成度(百...
暂时加了一个实验性的分集导出,仅导出标注状态为「看过」的分集,长这样:"本篇:1-2,4,7-8 SP:13"
#33 - 2022-5-13 15:49
(chanceyan)
mark
#34 - 2022-5-13 18:03
(Happy birthday.)
mark
#35 - 2022-5-13 18:35
(三思而后行)
mark
#36 - 2022-5-13 20:12
(追番日益,补番日损)
mark
#37 - 2022-5-13 23:17
(随便看看,随便玩玩)
mark
#38 - 2022-5-14 00:25
(不小心点到星星于是变成レイにゃん★ ...)
mark
#39 - 2022-5-14 00:58
(暴躁地路过)
mark
#40 - 2022-5-14 01:29
(最朴素的生活与最遥远的次元)
mark
#41 - 2022-5-15 09:22
(Present day, present time.)
mark
#42 - 2022-5-17 12:09
(啊啊)
试了下,效果不错。
#43 - 2022-5-24 22:58
2022/5/24:新增了
- 增量导出(将之前的 takeout.json 放在目录下,获取收视进度时只会请求时间上更新的条目)
- 导出至 CSV
#44 - 2022-5-25 20:00
(happy ice cream)
mark
#45 - 2022-5-25 21:43
mark
#46 - 2022-5-27 22:56
运行报这个错误楼主,(bgm43)(bgm43)是我的问题吗
#46-1 - 2022-5-27 23:03
#46-2 - 2022-5-27 23:03
QRcode
takeout.json这个文件里面是空的
#46-3 - 2022-5-27 23:20
NekoNull
是我的锅 (bgm38),似乎上传控件不上传也会输出文件... 已经修复了,可以再试试。
#46-4 - 2022-5-27 23:35
QRcode
NekoNull 说: 是我的锅 ,似乎上传控件不上传也会输出文件... 已经修复了,可以再试试。
谢谢可以使用了,打扰了这么晚还在fixbug
#47 - 2022-5-29 12:58
(好累)
mark
#48 - 2022-6-14 23:37
mark
#49 - 2022-6-19 20:28
(まずはその幻想をぶち殺す)
mark
#50 - 2022-6-20 15:00
(失去人性,失去很多;失去兽性,失去一切 ...)
mark
#51 - 2022-6-20 15:25
这个默认时区时中时区,要怎么调成东八区呢
#51-1 - 2022-6-20 17:23
NekoNull
具体指的是导出数据中哪个位置的时区呢?是不是在 colab 上运行的?默认是根据运行环境所在时区的。
#51-2 - 2022-6-20 17:32
konata
NekoNull 说: 具体指的是导出数据中哪个位置的时区呢?是不是在 colab 上运行的?默认是根据运行环境所在时区的。
所有显示时间的地方都是中时区,是在colab中运行的,但是我用的是日本的节点
#51-3 - 2022-6-21 02:50
NekoNull
藍色飛揚 说: 所有显示时间的地方都是中时区,是在colab中运行的,但是我用的是日本的节点
多谢说明!刚才确认了这是程序内未指定时区,默认使用运行环境时区导致的。Colab 内的机器无论地理位置应该都是 UTC 时区。未来可能会增加选项让用户自定义输出时区。
https://github.com/jerrylususu/bangumi-takeout-py/issues/11
#51-4 - 2022-6-26 20:28
NekoNull
Hi!在 Colab 笔记本中新增了一个设置项,可以手动调整输出文件中的时区。欢迎尝试!
#52 - 2022-6-20 15:36
(粗鄙的文字与不堪的我)
mark
#53 - 2022-6-20 16:46
(记性不好,看过就忘)
mark
#54 - 2022-6-20 16:51
(追求幸福吧。)
感谢
#55 - 2022-6-21 20:48
(二次元界acgn#%G潜行中……)
手机党(小白)表示看不懂,话说安卓端为何没搞出来?这种操作手机端第三方功能性(支持插件)浏览器能用吗?手机端貌似有支持py的软件?
#55-1 - 2022-6-21 22:26
NekoNull
这个项目实际上是一系列 Python 脚本,在手机端可以使用现有的 Python 工具运行。为了方便使用,提供了 Google Colab 笔记本链接,在任何设备上都可以使用 Google Colab 的远端虚拟环境运行本项目,从而省去了在本地配置相关依赖的麻烦。因为实际上并没有多少选项可供操纵,个人认为图形界面是不必要的。
#56 - 2022-6-22 05:51
新增加了一个测试中的 Bangumi Takeout More,支持了讨论、日志与目录的导出。欢迎尝试!
https://bgm.tv/group/topic/370889
#57 - 2022-6-22 09:23
(懒到极致便是不在乎,对一切人、事、物的漠然 ...)
M
#58 - 2022-6-23 09:35
(朋友不多,但很快活。)
mark
#58-1 - 2022-11-30 22:09
#59 - 2022-6-23 11:35
(一切都会变坏的)
mark
#60 - 2022-10-11 21:46
mark
#61 - 2022-11-30 01:48
(時は今 天が下知る 五月哉)
mark
#62 - 2022-11-30 01:55
(對立面的幸運)
Mark
#63 - 2022-11-30 09:24
mark
#64 - 2022-11-30 14:59
mark
#65 - 2022-11-30 15:12
(衣沾不足惜,但使愿无违。)
mark
#66 - 2022-11-30 23:04
(I love you more than you'll ever konw.)
mark
#67 - 2022-12-2 17:34
(咪啪☆~~)
mark
#68 - 2023-1-9 22:36
#69 - 2023-1-9 22:48
mark
#70 - 2023-1-9 23:16
mark
#71 - 2023-1-9 23:21
(在毁灭了吗?)
mark
#72 - 2023-4-21 18:35
(小圣杯邀请码: whyjxz14#576501)
删除了回复
#73 - 2023-4-21 18:50
(小圣杯邀请码: whyjxz14#576501)
感觉有bug
https://bgm.tv/subject/282964
像这种小德建的没信息的条目是不是会卡住?
#74 - 2023-5-15 10:52
(迷路,迷路,还欲逆流强渡。)
mark
#75 - 2023-5-15 15:14
mark
#76 - 2023-5-17 22:14
(Eden* They were only two,on the planet)
mark
#77 - 2023-7-26 08:41
(nobody cares.)
能打包成github action直接让用户调用么?这样可以周期dump到github action的artifact。请求可以用gevent做并发。
#77-1 - 2023-7-28 21:34
NekoNull
是个好主意,不过不知道这样是否会违反 ToS?另外 API 令牌过期可能也是个问题
#77-2 - 2023-7-30 10:44
徒手开根号二
NekoNull 说: 是个好主意,不过不知道这样是否会违反 ToS?另外 API 令牌过期可能也是个问题
我自己写了一些服务的自动备份还没出事,archive似乎也是这么运作的;cron别设置太高频,artifact保留日期缩短一点应该没啥问题。token可以最长可以申请365天,一年一更github secrets呗。感觉运行时间会是瓶颈,可能需要你做一些并行化修改。
#77-3 - 2023-8-2 00:07
NekoNull
已支持,可以参考 README 「使用 Github Actions 执行」 一节。

不过目前只是简单建了个 yml,代码层面没有做并行化。其实大部分数据从 archive 取的话,串行请求也够了,最耗时的也就是获取每个收藏的进度。我自己试了下,~140个收藏12分钟也跑完了,考虑到 Github Actions 有6个小时运行时间限制,一般情况下应该够用了。
#77-4 - 2023-8-2 00:43
徒手开根号二
NekoNull 说: 已支持,可以参考 README 「使用 Github Actions 执行」 一节。

不过目前只是简单建了个 yml,代码层面没有做并行化。其实大部分数据从 archive 取的话,串行请求也够了,...
牛的牛的
使用体验补充:总收藏条目超过3k的用户请不要使用github action,大概率会超时。
#77-5 - 2023-8-2 20:47
NekoNull
徒手开根号二 说: 牛的牛的
使用体验补充:总收藏条目超过3k的用户请不要使用github action,大概率会超时。
3k收藏可能的确有些超出当初设计的范围了。我猜这里主要是卡在了获取每个收藏的进度的步骤?如果是这样的话,可以手动调整请求间隔(在 fetch.py 顶部的 LOAD_WAIT_MS 变量)。不过不建议调的太小,否则可能会拖慢服务器。
#78 - 2023-7-28 21:36
(?)
mark
#79 - 2023-7-28 21:37
(人世几回伤往事,山形依旧枕寒流。)
mark
#80 - 2023-7-30 12:14
(终生处男)
mark
#81 - 2023-7-30 12:30
(杂食党、扭曲怪、galgame爱好者。追番党,原创番爱好者)
Mark
#82 - 2023-7-30 14:45
mark
#83 - 2023-8-2 07:36
mark
#84 - 2023-8-8 16:03
mark
#85 - 2023-8-13 01:19
mark
#86 - 2023-10-4 00:22
(大少数)
#87 - 2023-10-17 18:28
(小圣杯邀请码: whyjxz14#576501)
load from remote (not exist in local):   0%|          | 12/3002 [09:01<37:48:33, 45.52s/it]
一条要40多s。总共要30多个h。执行不完啊,总共最多也就能运行12h
#87-1 - 2023-10-17 22:19
NekoNull
这里为了避免对bangumi服务器造成攻击,加载间隔设置的很保守。可以手动调小 fetch.py 18 行的 LOAD_WAIT_MS 值试试,如降低到1500,但不要调的太小。
#87-2 - 2023-10-19 02:34
OH_toothache
NekoNull 说: 这里为了避免对bangumi服务器造成攻击,加载间隔设置的很保守。可以手动调小 fetch.py 18 行的 LOAD_WAIT_MS 值试试,如降低到1500,但不要调的太小。
下下来自己搞了。用colab弄死了都失败
#88 - 2023-10-17 18:30
(小圣杯邀请码: whyjxz14#576501)
昨天是卡在load preview。然后执行到500多就挂了。总之执行不完就出问题
#88-1 - 2023-10-17 22:21
NekoNull
具体的执行问题可在 Github 提 issue,如果有空会尝试修复(大概吧 (bgm38)
#89 - 2023-10-17 18:44
(安心看动画,不XJB讨论。)
小号就14个收藏很快搞定,大号……1470。
#89-1 - 2023-10-17 22:21
NekoNull
参见上文调小 LOAD_WAIT_MS 的建议
#90 - 2024-3-22 01:50
删除了回复