我被要求仅使用两位信息为数百个包提供GitHub repo URL。看起来我可能能够以编程方式执行此操作,但我需要一些帮助来确定方法。
我可以获取给定的基本URL,然后手动转到提交历史记录,并提供指向那里的链接,但我想我可以做得更好。我认为数据包含版本,日期和缩短的sha。
以下是给出的两位信息的示例:
github.com/shurcooL/reactions
v0.0.0-20181222204718-145cd5e7f3d1
有没有办法以编程方式引导我进入此提交的URL?如果是这样,我最终会在python中编写一些内容来处理列表并生成转储到CSV的URL。
您可以尝试这样的方法来提取缩短的github哈希值,将其附加到提交的基本URL,然后写入CSV文件:
from csv import writer
BASE_URL = 'https://github.com/shurcooL/reactions/commit/'
github_data = ['v0.0.0-20181222204718-145cd5e7f3d1']
# open file for writing
with open('github-commit-urls.csv', mode='w', newline='') as f:
csv_writer = writer(f)
for data in github_data:
# split by '-' dash to extract three pieces of data
release, date, commit_hash_short = data.split('-')
# write url to file
csv_writer.writerow([BASE_URL + commit_hash_short])
这将把以下URL转储到github-commit-urls.csv
:
https://github.com/shurcooL/reactions/commit/145cd5e7f3d1