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

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

ブログ    
ブログ    

推薦する

All Research: AIガバナンス市場規模は2027年に13億4,520万米ドルに達する

9月28日、市場調査会社オールリサーチが発表したレポートでは、2027年までに人工知能ガバナンス市場...

AIと機械理解の限界を打ち破り、オックスフォード大学のコンピューターサイエンス博士の143ページの論文は3Dオブジェクトの再構築とセグメント化を学ぶ

機械に人間のように三次元の現実世界を知覚する能力を与えることは、人工知能の分野における基本的かつ長年...

パーソナライズされた推奨事項は、馴染みのあるものに偏っていますか?アルゴリズムは公平性を侵害できない

北京日報によると、異なる消費者が同じ電子商取引プラットフォーム上で同じキーワードを使用して商品を検索...

斉燕傑:Sina Weibo のパーソナライズされたプッシュにおける機械学習の応用

[51CTO.comより引用] Sina Weiboは情報交換プラットフォームであるだけでなく、メデ...

...

2021年10月のドローン業界の最新動向を3分で振り返る

現在、人工知能や5Gなどの技術の助けを借りて、我が国のドローン開発は急速な成長の軌道に乗っています。...

「説明可能な」AIが金融セクターへの信頼を高める

[[423755]]人工知能は、詐欺の特定や金融犯罪の撲滅から、顧客への革新的なデジタル体験の提供に...

超人気のミニGPT-4は視覚機能が急増し、GitHubでは2万個のスターを獲得し、中国のチームによって制作されています

ターゲット検出用のGPT-4V?ネットユーザーの実地テスト:まだ準備ができていません。検出されたカテ...

清華大学は、2D拡散モデルを使用して不完全な3Dオブジェクトを補完する3D再構築の新しい方法、O²-Reconを提案しました。

コンピューター ビジョンでは、オブジェクト レベルの 3D サーフェス再構築テクノロジは多くの課題に...

アプリランキング操作の水軍が復活:Appleのアルゴリズムを破るために5倍のコストを費やす

[「今回の調整は、主にユーザーのアクティベーション率、アプリの使用頻度、評価など総合的に考慮して行う...

...

...

OpenAI の共同創設者 Karpathy が記事「自動運転による AGI の解釈」を公開しました。元の投稿は削除されました。保存済み

「汎用人工知能」に関しては、OpenAIの科学者カルパシー氏が説明を行った。数日前、Karpathy...

AIと宇宙技術が日常生活をどう改善するか

衛星から都市計画まで、人工知能の進歩は新たな洞察をもたらしています。 [[270081]]宇宙技術と...