Skip to content

hppRC/Carrier-Owl

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

51 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Carrier Owl

伝書フクロウという意味です。

About Carrier Owl

前日のarxivから気になる論文にスコアを付けてslackに通知するシステムです。
通知の際に、abstractをDeepLで翻訳しています。
導入は20minぐらいで終わります!!
スコアは、ターゲットとなるキーワードに重み付けをして決まります。(例 resnet=5, kaggle=3, audio=3)
ユーザーが好きな領域好きなキーワードを登録することで、通知される論文は変わります。

  • 登録キーワード例

    keywords:
        sound: 1
        audio: 1
        sound feature: 3
        audio feature: 3
        noise removal: 2
        spectrogram: 3
    
  • 通知例(score昇順)

Installation

requirements

  • google chrome
  • python3

step

  1. このリポジトリをフォークする

  2. フォークしたリポジトリをクローンする

  3. pythonライブラリのインストール pip install -r reuirements.txt

  4. Selenium のインストール(Seleniumについてはこちら)

    • chromeのバージョンの確認をしてください。

      • linuxの場合、以下のコマンドで確認できます。 google-chrome --version
    • webdriverのインストール。chromeのメジャーバージョンだけ抜き取って使います。

      • 例) chromeのバージョンが 84.0.4147.105場合 pip install chromedriver-binary==84.*
    • seleniumのインストール pip install selenium

  5. webhook urlの取得

    • 特定のslackチャンネルに流すための準備を行います。
    • incomming webhookのwebhook urlを取得してください。
    • slack通知の時のアイコンが設定できますので、よければこれ使ってください。
  6. webhook urlの設定

    • config.yaml 内の、'your webhook url' を取得したURlに変更します。

  7. 領域の設定

    • 通知させたいarxivの論文の領域を指定します。
    • (computer scienceの人はこの手順を飛ばしてstep8に進んでも構いません)
    • computer science なら cs などそれぞれに名前がついています。以下の手順で確認します。
    • 手順
      1. arxiv.orgにアクセス

      2. 通知させたい領域のresentと書かれた部分をクリック。

      3. 遷移後のページのurlを見て、list//recentに囲われている文字列を使います。

        • computer scienceの例: https://arxiv.org/list/cs/recent
        • この場合、cs をこの後利用する。
      4. config.yaml 内の、subject を3で取得した文字列に変更します。(デフォルトではcsになっています。)

  8. キーワードの設定

    • config.yaml にキーワードとそのキーワードのスコアを設定します。
    • 例(音に関する論文を通知してほしい場合)
      keywords:
          sound: 1
          audio: 1
          sound feature: 3
          audio feature: 3
          noise removal: 2
          spectrogram: 3
      
    • 仕組みとしては、以下のような感じです。
      1. abstractにキーワードが含まれているか

      2. 含まれていれば、キーワードの合計をscoreとし、昇順で通知

  9. 動作確認

    • 動作確認してみましょう。
      1. cd Carrier-Owl/src
      2. python3 carrier-owl.py
    • slackに通知が行けば成功です。
  10. 定期実行

    • cron(linux)を使えば定期実行ができます。
    • 設定例(月火水木金の9:50に実行)
      • 50 9 * * 1,2,3,4,5 python3 ~/Git/Carrier-Owl/src/carrier-owl.py

Reference

About

arxiv--> DeepL --> Slack

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 100.0%