ヤマムギ

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 openpyxlで結合セルを含むExcelファイルを開くと罫線が消える

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

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

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

Redmine REST APIを操作するpython_redmineを試してみた

Redmine のGUIの登録が面倒なのでコマンドで登録、更新、時間の記録が出来 …

Python SQLAlchemy MySQLでcase文を使う

PythohのORMライブラリSQLAlchemyでMySQLのテーブルSele …

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

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

pythonのsqlalchemyで嵌った話

目次 エラーメッセージ原因 エラーメッセージ InvalidRequestErr …

CentOS 6にPython実行環境を構築

CentOS6(32bit)にPython2.7実行環境を構築した際のメモです。 …

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

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

SQLAlchemyのModelクラスをMySQLから自動生成する

SQLAlchemyのMySQLモデルを書くのが面倒で、きっと何かツールがあるの …