ヤマムギ

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 クラウドプラクティショナー」という本を書きました。

 - Python , , , ,

ad

ad

  関連記事

「大阪Pythonユーザの集まり」に行ってきました

「大阪Pythonユーザの集まり」 に行ってきました。 あんまりメモ取れてません …

Python SQLAlchemy MySQLでテーブルを指定せずにFunctionを使う

難しく考えて悩んでいましたが、queryに書いてやればいいだけでした。 sess …

「【第2回】データ分析勉強会(尼崎Pythonの会#1)」に行ってきました

「【第2回】データ分析勉強会(尼崎Pythonの会#1)」に行ってきました。 略 …

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

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

CentOS 6でPythonからOracleに接続する

OracleのデータをPythonでさわりたくて、その実行環境がCentOS6の …

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

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

Pepperで撮影した写真をAmazon Rekognitionで分析してその結果をPepperがしゃべる ~(2)Pepper編~

Pepperで撮影した写真をAmazon Rekognitionで分析してその結 …

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

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

SQLAlchemy Session.executeでinsertしてAUTO INCREMENTでセットされたプライマリキーを取得したい

PythohのORMライブラリSQLAlchemyでMySQLにインサートしたレ …

SQLAlchemyでjoinする

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