機能 ショートカットキー
リファレンス(参考URL)一覧へ移動 R
記事URLをMarkDownとしてコピー Ctrl+M
前のコードタグへ移動 Ctrl+←
次のコードタグへ移動 Ctrl+→
ヘルプを表示・非表示 H
Tips
- ショートカットキーは記事上で有効です。ヘッダー/フッター付近では機能しないことがあります。
- コードタグ移動機能がうまく動かないときは、Shift+F5でページを更新してみてください。
- このウィンドウを閉じるには、Hキーをもう一度押してください

Gmailで特定のメールを受信したらスクレイピングしてLINEに通知する

AD

プログラミング

yuis-ice/Scraping-GAS-Emails: Scraping utility for a Email from Google apps script via Sinatra Ruby server.

Scraping utility for a Email from Google apps script via Sinatra Ruby server.

Google apps scriptで取得したメールをsinatraサーバーに送ってパース/スクレイピングするユーティリティです。
スクレイピングした内容をslackやLINE,Windowsなどに通知などの用途を想定しています。

例えば、keepaから受信したHTMLメールをスクレイピングしてLINEに通知、したものが以下になります。

https://yuis.xsrv.jp/images/ss/ShareX_ScreenShot_2e31df9b-0134-4fab-bd4a-52acb9587b53.png

以下、README.mdの翻訳です。

sinatra URLs

プログラミング
  • GET http://YOUR_DOMAIN/index : メインページ
  • GET http://YOUR_DOMAIN/row_email : スクレイピングされたemail(生)
  • GET http://YOUR_DOMAIN/email : スクレイピングされたemail(sinatraヘッダー付き)
  • GET http://YOUR_DOMAIN/dev : 特になし
  • POST http://YOUR_DOMAIN/dev : htmlをこのURLにPOSTし、次に/row_emailに行くと、chromeデベロッパーツールなどを使用してDOMエレメントを取得することができます。nokogiriの.cssや.xpathで使用するcssセレクターやxpathをこのページで簡単に取得することができます。
  • POST http://YOUR_DOMAIN/keepa : 例として、keepaのメールをスクレイピングしてLINEに送る操作をするアクションを定義してみました。

使い方

プログラミング

please change below variables to your own value in each file.

それぞれのファイルの以下の変数を自分の値に置き換えてください。

YOUR_LINE_NOTIFY_API_KEY
YOUR_DOMAIN

使用前にnokogiriやsinatraのインストールをお願いします。
(Gemfileは)ないです…。次から気をつけます。

git clone https://github.com/yuis-ice/Scraping-GAS-Emails.git
cd Scraping-GAS-Emails
ruby app.rb -o [YOUR IP ADDRESS] -p 80

Google apps script ファイルの例

プログラミング

How You get HTML from a message (an email) using Google apps script.

Google apps scirptを使ってメールのHTMLを取得する方法については以下のファイルが参考になるかもしれません。

GAS/Code.gs

あとがき

プログラミング

Railsもできるので今回のこれをウェブサービスみたいにできないことも無いんだけど果たして需要があるのだろうか。
Railsだったらもっといろいろできますからね。
ウェブサービス作りてーって2年前から言ってるけどいざ作れるようになると選択肢が多すぎてどうしたらいいのかわからなくなりますね。ディープラーニング路線とかもありますし。

SPONSOR

オンラインブートキャンプ全12コースの「ウケ放題」 AD

コメントを残す

Close Menu