ヤマムギ

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:」とかを入れると絵文字も返してくれるのですね。
少しづつ愛着が湧いてきます。


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

「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。

「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。

「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。

「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。

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

 - AWS , , ,

ad

ad

  関連記事

Cloud9 Python3でpipも3にする

このブログは、2019/10/20に書いた、 Cloud9のAMIがCloud9 …

ALBにWAFを関連付けて特定のヘッダー以外はブロックする

おかげさまで、ブログのアクセスも増えてきて、t3.nano EC2インスタンス単 …

Cloud9でSAMローカルテスト

せっかくテストするので、Amazon CloudSearchからAmazon E …

AWS Lambda(Python)からAmazon Connectで電話を発信する

自動で電話を発信する必要がありまして、電話発信APIを開発することになりましたの …

執筆環境(PyCharm, CodeCommit, CodePipeline, S3, Lambda, 署名付きURL)

2018年から、年に1回ぐらい商業本の執筆をさせていただいております。 2020 …

EC2 Amazon Linux 2 にAmazon LinuxからWordPressを移行

このブログを新しいインスタンスに移行することにしました。 2015年5月にAma …

CloudFront用のAWS管理プレフィックスリストを使用しました

このブログでは、CloudFrontのカスタムヘッダーとALBのルーティングを組 …

CloudTrailイベントのコストしか発生していないリージョンのコスト発生源を調査しました

調査のきっかけ ふと検証用AWSアカウントのCostExplorerを見てました …

DynamoDB Accelerator(DAX)のサンプルアプリケーション(Python)を実行

DynamoDBデベロッパーガイドのDynamoDB Accelerator(D …

AWS CodeBuildのチュートリアルをやってみました

こちらユーザーガイドの最初の方にあるチュートリアルです。 コンソールを使用した …