ヤマムギ

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

  関連記事

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

Google Calendar Twilio ReminderのGoogleカレ …

CentOS 6にPython実行環境を構築

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

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

目次 環境pyenvのアップデート 環境 macOS Sierra 10.12. …

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

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

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

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

Pepper 開発 ワークショップ初級~中級~番外編に1日で一気に参加した

Pepperの開発方法が知りたかったので、Pepperアトリエ秋葉原 with …

IPython Notebookで梅田のラーメン屋さんの統計情報を抽出するというハンズオンに行ってきました

IPython Notebookで梅田のラーメン屋さんの情報をWebスクレイピン …

SQLAlchemyでシンプルにjoinする

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

pythonのsqlalchemyで嵌った話

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

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

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