Pythonを使用して独自のTwitterボットを構築する方法を学びます

Pythonを使用して独自のTwitterボットを構築する方法を学びます

Twitter を使用すると、ユーザーはブログの投稿や記事を世界と共有できます。 Python と Tweepy ライブラリを使用すると、すべてのツイートを管理する Twitter ボットを簡単に作成できます。この記事では、そのようなロボットの構築方法について説明します。これらの概念を他のオンライン サービス プロジェクトにも適用できることを願っています。

始める

tweepy ライブラリを使用すると、Twitter ボットの作成プロセスがはるかに簡単になります。 Twitter API 呼び出しと非常にシンプルなインターフェースが含まれています。

次のコマンドは、 pipenvを使用して仮想環境に tweepy をインストールします。 pipenvがインストールされていない場合は、Fedora に Pipenv をインストールする方法に関する以前の記事を参照してください。

  1. $ mkdir twitterbot
  2. $ cd twitterbot
  3. $ pipenv -- three
  4. $ pipenv install tweepy
  5. $ pipenv shell

Tweepy - はじめに

Twitter API を使用するには、ボットが Twitter によって承認される必要があります。この問題を解決するために、tweepy は OAuth 認証標準を使用します。 https://apps.twitter.com/ で新しいアプリケーションを作成することで、資格情報を取得できます。

新しいTwitterアプリケーションを作成する

フォームに記入してクリックしたら独自のTwitterアプリケーションを作成するTwitterアプリケーションを作成する「」ボタンをクリックすると、アプリケーションの認証情報を取得できます。TweepyではユーザーキーAPIキーそしてユーザーパスワードAPIシークレット、これはキーとアクセストークンキーとアクセストークン」。

下にスクロールしてアクセストークンを作成するアクセストークンを作成する「」ボタンをクリックして「アクセストークンアクセストークン” と “アクセストークンシークレットアクセストークンシークレット」。

Tweppy の使用 - タイムラインのエクスポート

必要な資格情報を取得したら、ファイルを開いて次の Python コードを記述します。

  1. import tweepy
  2. auth = tweepy . OAuthHandler ( "your_consumer_key" , "your_consumer_key_secret" )
  3. auth . set_access_token ( "your_access_token" , "your_access_token_secret" )
  4. api = tweepy . API ( auth )
  5. public_tweets = api . home_timeline ()
  6. for tweet in public_tweets :
  7. print ( tweet . text )

Pipenv 仮想環境を使用していることを確認した後、プログラムを実行します。

  1. $ python tweet . py

上記のプログラムはhome_timelineメソッドを呼び出して、タイムライン内の最新の 20 件のツイートを取得します。ボットが tweepy を使用して Twitter からデータを取得できるようになったので、コードを変更してツイートを送信してみましょう。

Tweepy の使用 - ツイートの送信

ツイートを送信するには、簡単に使用できる API メソッドupdate_statusがあります。使い方は簡単です:

  1. api . update_status ( "The awesome text you would like to tweet" )

Tweepy 拡張機能は、Twitter ボットを作成するためのさまざまな便利な方法を提供します。 API の詳細については、ドキュメントを参照してください。

雑誌ロボット

次に、Fedora Magazine のツイートを検索してリツイートするボットを作成します。

同じコンテンツを複数回リツイートすることを避けるために、ボットは最新のリツイートの ID を保存します。 2 つのヘルパー関数store_last_idget_last_id 、この ID を保存するのに役立ちます。

次に、ボットは tweepy 検索 API を使用して、Fedora Magazine からの最新のツイートを検索し、ID を保存します。

  1. import tweepy
  2. def store_last_id ( tweet_id ):
  3. """ Stores a tweet id in text file """
  4. with open ( 'lastid' , 'w' ) as fp :
  5. fp . write ( str ( tweet_id ))
  6. def get_last_id ():
  7. """ Retrieve the list of tweets that were
  8. already retweeted """
  9. with open ( 'lastid' ) as fp :
  10. return fp . read ()
  11. if __name__ == '__main__' :
  12. auth = tweepy . OAuthHandler ( "your_consumer_key" , "your_consumer_key_secret" )
  13. auth . set_access_token ( "your_access_token" , "your_access_token_secret" )
  14. api = tweepy . API ( auth )
  15. try :
  16. last_id = get_last_id ()
  17. except FileNotFoundError :
  18. print ( "No retweet yet" )
  19. last_id = None
  20. for tweet in tweepy . Cursor ( api . search , q = "fedoramagazine.org" , since_id = last_id ). items ():
  21. if tweet . user . name == 'Fedora Project' :
  22. store_last_id ( tweet . id )
  23. # tweet . retweet ()
  24. print ( f '"{tweet.text}" was retweeted' )

Fedora Magazine のツイートのみをリツイートするために、ボットは fedoramagazine.org を含み、「Fedora Project」Twitter アカウントによって投稿されたツイートを検索します。

結論は

この記事では、tweepy Python ライブラリを使用して、ツイートを自動的に読み取り、送信、検索する Twitter アプリケーションを作成する方法を説明しました。これで、あなた自身の創造力を使って独自の Twitter ボットを作成できます。

この記事のデモ ソース コードは Github にあります。

<<:  第2回解析アルゴリズムコンテストが開始され、技術専門家があなたの参加を待っています

>>:  いくつかの負荷分散アルゴリズムの原理とコード実装

ブログ    
ブログ    

推薦する

テスラのヒューマノイドロボットが再び進化:視覚のみに基づいて物体を自律的に分類し、ヨガができる

数ヶ月沈黙していたテスラのヒューマノイドロボット、オプティマスプライムがついに新たな展開を見せた。私...

ビジネスマーケティングにおける人工知能の6つの応用

[[378540]] [51CTO.com クイック翻訳] 今日、人工知能(AI)に基づくソリューシ...

...

...

Gemini 1.5 ハンズオンレビュー: Sora は偽物に見えるが、もっと素晴らしい機能がある

Googleの「反撃」が来た!ジェミニはソラに脚光を奪われましたが、今は再び脚光を浴びているようです...

Java プログラミング スキル - データ構造とアルゴリズム「循環リンク リストとジョセフ問題」

[[386837]]ジョセフ問題1、2、...n と番号が付けられた n 人が輪になって座り、番号...

シリコンバレーの人工知能専門家:人類は20年以内に老化の束縛から解放されるかもしれない

現在、世界最高齢の人は、ギネス世界記録に認定された118歳の日本人老人、田中カネさんです。田中選手の...

ゼロサンプルに主眼が置かれています! ReSimAD: 自動運転で 3D ドメイン適応を実現するには?

この記事は、Heart of Autonomous Driving の公開アカウントから許可を得て転...

OpenAIは米国で以前に申請していた「GPT-5」の商標を中国で登録申請した。

8月10日、国家知識産権局商標局の公式サイトによると、OPENAI OPCO, LLCは先月末に2...

MITのロボットは、浸透する無線周波数を使って隠れた物体を感知する

[[391062]]海外メディアの報道によると、世界中の研究者がロボットが周囲の状況をよりよく認識...

人工知能(AI)時代に誰もが身につけるべき9つのソフトスキル

今日の人工知能、ビッグデータ、自動化の時代では、技術的なスキルとデータリテラシーが非常に重要です。し...

...

顔認識を使用してアバターにマスクとゴーグルを自動的に追加する方法

アバターにマスクとゴーグルを追加するプロジェクトアドレス: https://github.com/E...

2021年にITリーダーがAIと機械学習に期待すること

毎年末と翌年の初めに、IT 思想リーダーが翌年のテクノロジー、革新的なサービス、業界の進歩などの開発...