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回解析アルゴリズムコンテストが開始され、技術専門家があなたの参加を待っています

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

ブログ    
ブログ    

推薦する

HTTPS の脆弱性が再び明らかに、企業は SSL/TLS 暗号化アルゴリズムをアップグレードする必要がある

CBC および RC4 暗号化アルゴリズムが相次いで「衰退」しているため、SSL/TLS に依存して...

Google のアルゴリズムが明らかに: 検索リクエストは平均 2,400 キロメートル往復移動します

Google 検索の進化3月12日のニュース: 世界で最も広く使われている検索エンジンであるGoog...

国内外のオープンソースモデルを競うLlama-2の初の総合評価

2023年7月を迎え、大規模言語モデル(LLM)の開発は新たな段階に入り、オープンソースが話題になっ...

人工知能は石油・ガス生産者の業務改善と温室効果ガス排出削減に貢献

[[437362]]石油・ガス生産者の操業実績を測る指標は数多くあり、効率性の向上、コストの削減、油...

Google の大きな暴露: 謎の AI ツールが明らかに、Gemini が PaLM 2 に取って代わる

「大リーク:コードネームStubbsというGoogleの謎のAIツールが暴露された」と、Xという名の...

...

自動化によって、採用担当者が大規模な適格な人材を特定する方法

AI ベースの自動化ツールは、候補者データを収集して処理し、候補者の調達、スクリーニング、多様性、そ...

AIは人間よりはるかに優れています。AIが意識を持つようになったら、人間はAIに取って代わられてしまうのでしょうか?

人工知能は、無意識のうちに私たちの生活にほぼ完全に浸透しているようで、人工知能の知能レベルはますます...

2021年中国の人工知能産業市場規模とサブ産業の市場予測分析

人工知能は、人間による情報の統合、データの分析、機械の助けを借りた洞察の獲得のプロセスを再構築し、人...

...

...

...

あなたの頭上に「ロボット」がやって来ます!起業家の知恵:リアルタイムで位置を特定し、自動的に警報を鳴らすスマートヘルメットの開発

[[317160]]建設作業中には、火災、電気、機械など、多くの潜在的な安全上の危険が存在します。安...

...

ViT以外にも、美団、浙江大学などが、視覚タスクのための統合アーキテクチャであるVisionLLAMAを提案した。

過去 6 か月間にわたり、Meta のオープン ソース LLaMA アーキテクチャはテストされ、LL...