ヤマムギ

growing hard days.

*

feedlyでタグ付けした記事を自動でメール配信する

   


feedly-lambda-python

feedlyを使っていて、良記事や知っておいて欲しい記事とかを部門とかチームとかにまとめて配信するのですが、これも手でやってると結構面倒なので、APIを使って毎日自動配信する事にしました。

公式のAPI情報はこちらです。
http://developer.feedly.com/v3/

コードはGitHubで公開しています。
feedly-mail

トークン

https://cloud.feedly.com/v3/auth/devのリンク先で普段ログインしている方法でログインします。

facebookとGoogleの場合はメールで、Twitterの場合はダイレクトメッセージでURLが届きますのでそれをクリックします。

これでアクセストークンがとれるのでUSER IDと一緒に記録しておきます。

各パラメータ

各パラメータは下記を設定します。
私の場合はGmailで送信しています。

メール送信

smtplibでメールを送信します。

天気情報の取得

記事情報だけもなんだか味気ないのでついでに天気情報も送信します。
OpenWeatherMAP APIで現在の指定した都市の天気情報を取得します。

天気情報のコードを日本語に直しています。

実行関数

AWS Lambdaで実行していますのでこのように書いています。

https://cloud.feedly.com/v3/streams/contents

Feedを取得しています。

  • streamId global.saveというタグを指定してSaved For Laterに入れたFeed一覧を取得します。
  • count 指定しなければデフォルトが10なので一応100にしています。
  • newerThan 指定した日時よりも新しいFeedを取得しています。
  • headers ‘Authorization’にトークンを設定しています。

※当初は全タグをタグごとに呼んでメール本文を整理していたのですが、Feedlyの1日のコール回数上限が250回でテストとかしているとすぐに上限にいっちゃってたので、1回しかコールしないようにこのやり方にしています。


最後までお読みいただきましてありがとうございました!

【PR】 「AWS認定試験対策 AWS クラウドプラクティショナー」という本を書きました。

【PR】 「AWSではじめるLinux入門ガイド」という本を書きました。

 - Python , , , ,

ad

ad

  関連記事

SQLAlchemyでjoinする

PythonのSQLAlchemyでMySQLのテーブルをjoinするときの覚書 …

Python openpyxlで結合セルを含むExcelファイルを開くと罫線が消える

PythonのExcelを読み書きするためのライブラリ、openpyxlで結合セ …

「MonotaRo Tech #3 テスト自動化」に行ってきました

モノタロウさんの「MonotaRo Tech #3 テスト自動化」に行ってきまし …

pyenv update で「pyenv: no such command `update’ 」

環境 macOS Sierra 10.12.4 pyenvのアップデート pye …

SQLAlchemyでシンプルにjoinする

過去のSQLAlchemyでjoinするという記事でPythonのSQLAlch …

Feedlyのフィードを自動でSlackへ投稿する(AWS Lambda , Amazon DynamoDB)

やりたいこと Feedlyで共有したいフィードに特定のタグを付けます。 特定のタ …

個人のGoogleカレンダーの予定をPythonで取得する

Google Calendar Twilio ReminderのGoogleカレ …

Rocket.ChatのAPIでユーザーを一括登録する

Rocket.Chatの管理画面にインポートのメニューはあって、どうやらuser …

SendGrid(Python)で添付ファイル付きのメールを送信する

SendGridを使って添付ファイル付きのメールを送信するサンプルをPython …

SendGrid(sendgrid_python)でメール送信してイベントの情報からメール本文をたどれるようにしておく

動的に生成するメールで実際にどんな本文が送信されたかを記録しておきたいときもある …