[Osu!]使用脚本自动生成Trello卡片

一些前言:
不是很会写教程,凑合着看吧。;w;
注:(大)部分代码方面的内容在ChatGPT的帮助下完成。因为不是很懂API这方面的东西
我Python也是半吊子 xwx

打个小广告,这是我的Modding Queue:
https://osu.ppy.sh/community/forums/topics/1725078

我的Trello:
wIntEr7z's Modding Queue | Trello

非常欢迎来申请摸图。我会非常热情认真的帮你们摸图的!喵喵!虽然我是一个新modder
我目前已经快英语ptsd了呜呜呜呜呜(充满感情地痛哭

本文将介绍:如何使用简单的脚本,通过Osu! API & Trello API,达到输入指定bid,自动添加相关Trello卡片的效果。
听起来很复杂,实际上非常!简单!
因为我会把代码框架给你,你只需要申请指定的API(的验证密钥)就行。——因为这东西一人一个,不能分享给别人。
这个通常会使用在有关Modding/GD Queue的地方,不过也可以照葫芦画瓢用在其他的位置。
需要的硬件支持:
一台电脑。
一个Trello账户。
一颗坚强的心
不过我感觉,我已经把所有的错都试过一遍了。所以不用担心,只要跟着教程走,就基本没问题了。
如果看完教程后感觉一头雾水,请立刻退出教程,不要再看它任何一眼!

STEP1: 申请 Osu! API
在 ↑ 这篇 ↑ 教程中有提到过关于申请API的教程,所以不再阐述了。
原本是想再详写一下的,但是这个教程是我大半夜写的,有点累,懒得写了。
而且另一篇文章写的也足够详细了。
附:
github.com/ppy/osu-api/wiki - osu!api v1
osu.ppy.sh/docs/index.html - osu!api v2
tieba.baidu.com/p/5068803110 - 贴吧教程(osu!api v1)


STEP 2: 申请Trello API
——如果没有Trello的话,注册一个就行。
① 进入 https://trello.com/app-key
看到如下界面。

② 点击 Go to the Power-Up Admin Portal。
接着来到这里。勾选同意,点击继续。

P.S. 这个界面如果是英文的话,点击右上角头像 - setting(设置),下面设置语言。

之后,界面跳转到这里。

③ 之后,再进入 https://trello.com/app-key
现在就能看到你的个人密钥了。

你的密钥,Token尽量不要告诉其他人。
④ 接下来就是获取Token。(之前在这步上我出了点问题,不过最后查了半天,成功了。;w;)
注意:不要点击这里的 “信令” 直接生成你的Token。
看到下面的网址:
https://trello.com/1/connect?key=YOUR_API_KEY&name=YOUR_BOARD_ID&expiration=never&response_type=token&scope=read,write
- 将YOUR_API_KEY替换成上面的个人密钥。
- 将YOUR_BOARD_ID替换成你的board id。
关于board id的获取:
例如这是我的看板网址:trello.com/b/7wFbOrxE/winter7zs-modding-queue。
其中7wFbOrxE就是我的board id,winter7zs-modding-queue是board name。
- 总之复制你的看板名字前面那八个字符,替换掉YOUR_BOARD_ID。
之后进入改完的网址。

往下滑,点击允许。

好了,这就是你的token。记得保存下来。
可以通过重新进入上面的网址获取token,来重置原来的token。

STEP 3: 获取LIST_ID (&LABEL_ID)
https://api.trello.com/1/boards/YOUR_BOARD_ID/lists?key=YOUR_API_KEY&token=YOUR_API_TOKEN
上面board id,api key,api token,你已经在前面的教程中获取到了。
替换成你自己的,打开网页。
之后会看到这样的一串数据。

前面这些就是你看板中,对应列表的list_id了。
- 如果你还想要自动添加标签的功能:
https://api.trello.com/1/boards/YOUR_BOARD_ID/labels?key=YOUR_API_KEY&token=YOUR_API_TOKEN
这里可以查询标签id。(LABEL_ID)

到这里,这篇教程就基本完成了!喵喵!
之后就是把代码模板里的变量都换成上面获取过的东西了。代码模板放在底下,自行下载。
写这篇教程之前遇到了许多困难。包括用蓝色链接注册的token没法写入新卡片、分不清board_id与board_name,以及如何获取list_id和label_id。
代码框架是ChatGPT帮忙写的,不过很多细节问题似乎他也不清楚,而且我用的时候卡的要死;w;。许多问题就只能用搜索引擎漫无目的地寻找。不过幸好在某个犄角旮旯的地方翻出来了解决办法(很想吐槽下那个网站还是机翻的)。
如果需要更多功能可以自己改改代码,因为代码中可能修改的地方都有示例,就不再阐述了。就是复制粘贴的事儿。
osu!api能获取的更多信息,可以在我上面贴出的贴吧网址那里找。——如果你需要的话,把特定的名称复制下来,自行添加就行。
tag需要的if条件,可能得你自己确定。不过我提前写好了一份难度tags的if模板,如果你想直接用的话,记得改下tag名称和对应的label_id。(这里tag和label,我指的都是标签的意思。)
难度分级:我对照了osu!wiki的分级。

最后,代码模板放在这里。
如果觉得有帮助,希望能给我点一个小小的赞!Owo

