ヤマムギ

growing hard days.

*

slackのbotにWikipediaを調べてもらう(Python on AWS Lambda + API Gateway)

   


slack-apigateway-lambda-wikipedia

slackのbotに少しでも役に立ってもらおうと、Wikipediaを調べてもらう事にしました。

環境は手前味噌ですが「slackのbotをAWS Lambda(Python)+API Gatewayで構築」をご参照ください。

Wikipediaモジュールを使う

Wikipediaモジュールをインストールします。
AWS lambdaにアップロードするために実行ファイルと同じフォルダにインストールします。

投稿に「って何」が含まれているか、用意したトリガーがない場合はとりあえずWikipediaを調べてもらう事にしました。

  • wikipedia.set_lang(‘ja’)で日本版のwikipediaを検索しています。
  • wikipedia.search(search_text)で検索結果が配列で返ります。
  • wikipedia.page(search_response[0])で1番上の候補を結果としてページを取得ます。
    配列1番目にページが入っていない場合があるようで、pageでエラーになるのでその時は2番目を取得するようにしています。
  • wiki_page.contentで内容が、wiki_page.urlでURLが返ります。

slack-wikipedia

slackに返すtextに「:triumph:」とかを入れると絵文字も返してくれるのですね。
少しづつ愛着が湧いてきます。

@yamamanx

開発ベンダー5年、ユーザ企業システム部門通算9年、ITトレーナー1年目のSoftware Engineerです。
質問はコメントかSNSなどからお気軽にどうぞ。
出来る限りなるべく答えます。

このブログの内容/発言の一切は個人の見解であり、所属する組織とは関係ありません。

また、勉強会やイベントのレポートは自分が気になったことをメモしたり、聞いて思ったことを書いていますので、登壇者の意見や発表内容ではありません。

 - AWS , , ,

ad

ad

  関連記事

2017年、このブログ(WordPress(Amazon EC2 + RDS))で対応してきたこと

Amazon Web Services Advent Calendar 2017 …

API GatewayのアクセスログをCloudWatchに記録する

Amazon API GatewayのアクセスログをCloudWatchに記録で …

リザーブドインスタンスはじめました

このブログも2014年9月にはじめたので、もうすぐ3年。 1件~17件とばらつき …

slackのbotをAWS Lambda(Python)+API Gatewayで構築

slackで投稿した内容に応じて返信したり調べ物したりしてくれるbotですが、こ …

JAWS-UG Osaka 第15回勉強会 AWS Summit Tokyo 2016 アップデート追っかけ会

「JAWS-UG Osaka 第15回勉強会 AWS Summit Tokyo …

Amazon Cognito User Poolsのデモをしてみました

AWS Summit 2016 Tokyoのアップデートおっかけ会をJAWS-U …

AWS Code Commitをプライベートリポジトリとして使う

GitHubでもいいんですが、アクセスキーとかパスワードとかコンフィグ系で書いて …

Redmineの添付ファイルをS3に同期する

RedmineをAWS上で構築するデザインを考えていて、せっかくなので冗長化しよ …

kintone webhookからAWS API Gateway – Lambdaを実行しレコードの値を渡す

2017年2月のアップデートでkintoneにWebhook機能がリリースされま …

Amazon Elasticsearch ServiceにMySQLのデータを投入してkibanaで可視化してみる

MySQLのデータの可視化にAmazon Elasticsearch Servi …