今回はタイトルの通り、arXivの新着論文からキーワードを含む論文をチェックする自動ツールを作りました。
arXivとは
arXivとはプレプリントサーバ(査読前の論文を投稿するサーバ)です。
数学、物理、情報系の分野を中心に世界中で使われています。
特に物理のhep-th (high energy physics - theory, 素粒子理論 )ではarXivがデファクトスタンダードとなっています(arXiv自体がこの分野の研究者により設立されたため)。
機能、実装
このツールでは、最近投稿された論文全体から設定しておいたキーワードをabstractに含む論文を検索し、log.csvに書き出します。
データの取得にはarxiv APIのpython wrapperであるarxiv.pyを使っています。
本来、arXiv APIでの論文情報取得はhttpでgetリクエストするだけの1行で済みます。
しかし今回、生のarXiv APIのままだと日付指定による取得がすぐには出来なかったので、wrapperを使っています。
またGitHub Actionsにより毎日自動で更新させています。
GitHub上でubuntuを立ち上げ、Python環境を構築し、main.pyの実行後、リポジトリにcommit, pushさせています。
その際、投稿日が実行時点の3日前から1日前のものを取得するようにしています。
というのはarXivは土日は更新がなく、金土日ぶんの投稿が月曜に一気に更新されます。
よって前日だけの取得だと、金曜と土曜の投稿を取り逃がしてしまいます。
そのためこのような処理にし、重複は取り除いて処理しています。
感想
この分野ではarXivの新着論文は毎日チェックするべきなのですが、自分の研究に関連のある論文でも見落としがあることもありえるので、それを防ぐ補助的な用途として実用的なものが出来ました。
必要に応じてメールやSlackへの通知なども実装してもよさそうです。
参考になったサイト
arXiv API Access | arXiv e-print repository
PythonでarXiv APIを使って論文情報取得、PDFダウンロード | note.nkmk.me
arXiv API を用いて論文情報取得!(入門編 / python) | AIリサーチコレクション
簡潔ですがいったん以上です。
ではまた次の投稿で。