利用Github实现自动化筛选日更Arixv文章
配置日更arxiv文章的自动化流程
需求分析
1、及时获取最新的感兴趣的arxiv论文,可以通过预设关键字,并匹配文章摘要,抓取感兴趣文章;
2、自动化流程,通过github的action方法自动实现,定时操作(比如,每日更新一次),我们仅需查看特定仓库issue即可。
总体方案
1、python抓取特定arxiv文章并推送到github某仓库中,推送信息以issue的形式呈现,方便删除与关闭操作;
2、利用Github的Action功能实现定时抓取流程;
1、抓取文章并推送
这里使用 https://github.com/kobiso/get-daily-arxiv-noti 中的方法。
将该仓库克隆到本地后,需要配置config.py的内容:
1 | # Authentication for user filing issue (must have read/write access to repository to add issue to) |
本地运行方法:
1 | python PATH-TO-CODE/main.py |
这时,我们已经可以实现手动推送功能了,但是如果要自动化该流程,我们需要把本地代码上传到github某仓库中,并借助Action功能实现自动化流程。
2、在github上配置Action实现自动化
在仓库中新建文件夹.github/workflows/
,新建main.yml
文件:
1 | name: "daily alerts" |
根据以上yml文件,github会定时触发预定流程(这里是每天0点更新,或者是在更新仓库后也会触发动作);
具体触发过程:在指定系统下,安装依赖指定文件(可以由requirements.txt指定),然后执行main.py
文件,最后,提交变化更新本仓库;
推送效果样例
这里展示一个样例,https://github.com/kobiso/daily-arxiv-noti/issues
参考
arxiv文章自动issue:https://github.com/kobiso/get-daily-arxiv-noti
配置github个人访问令牌:https://docs.github.com/cn/github/authenticating-to-github/keeping-your-account-and-data-secure/creating-a-personal-access-token