Pythonでツイートする方法|Tweepyを使ったX(Twitter)への投稿手順を解説
Pythonからツイートを行うには、事前にいくつかの準備ステップを踏む必要があります。この記事では、Tweepyライブラリを使ってX(旧Twitter)に投稿するまでの流れを、初心者にもわかりやすく順を追って解説します。
事前準備の5つのステップ
ステップ1:プロフィールの作成と電話番号の登録
まず、X(Twitter)のプロフィールを作成し、アカウントに携帯電話番号を紐付けます。
「設定」→「電話を追加」→「番号を追加」→「確認」→「保存」の順に進めてください。
登録が完了したら、すべてのテキスト通知をオフにしておきましょう。
ステップ2:新しいアプリの作成
次に、開発者向けのアプリケーションを新規作成します。
「Twitter Apps」→「Create New App」→「Callback URL」は空欄のまま→「Create your Twitter application」をクリックします。
作成が完了すると、「Your application has been created. You review and adjust your application's settings」(アプリケーションが作成されました。設定を確認・調整してください)というメッセージが表示されます。
ステップ3:アクセス権限を読み書き可能に変更
デフォルトではツイートのアクセス権限は「読み取り専用」に設定されています。ツイートを送信するには書き込み権限が必要です。
「Permissions」タブ→「What type of access does your application need?」→「Read and Write」を選択→「Update Settings」をクリックします。
設定が完了すると、「The permission settings have been successfully updated. It may take a moment for the changes to reflect.」(権限設定が正常に更新されました。変更が反映されるまで少し時間がかかる場合があります)というメッセージが表示されます。
ステップ4:キーとアクセストークンの取得
続いて、APIキーとアクセストークンを取得します。
「Keys and Access Tokens」タブを開き、「Create my access token」をクリックしてください。
「Your application access token has been successfully generated」(アクセストークンが正常に生成されました)と表示されれば成功です。
最後に、アクセストークン/シークレット、および読み書き権限が正しく設定されていることを確認しておきましょう。
ステップ5:Tweepyのインストール
最後に、Tweepyライブラリをインストールします。以下のコマンドを実行してください。
pip install tweepy
シンプルなテキストツイートを投稿する
以下は、認証情報を使ってテキストのみのツイートを投稿するサンプルコードです。
# -*- coding: utf-8 -*- """ Created on Wed Oct 17 06:00:58 2018 @author: Satyajit """ import tweepy # 個人認証情報(各キーはご自身の値に置き換えてください) my_consumer_key = "customer_key" my_consumer_secret = "secret_no" my_access_token = "token_no" my_access_token_secret = "secret_token" # コンシューマーキーとシークレットによる認証 my_auth = tweepy.OAuthHandler(my_consumer_key, my_consumer_secret) # アクセストークンとシークレットによる認証 my_auth.set_access_token(my_access_token, my_access_token_secret) my_api = tweepy.API(my_auth) my_api.update_status(status="Hi All Of my Friends !!!!")
画像などのメディア付きツイートを投稿する
画像ファイルを添付してツイートする場合は、update_with_media()メソッドを使用します。
import tweepy # 個人認証情報 my_consumer_key = "customer_key" my_consumer_secret = "secret_no" my_access_token = "token_no" my_access_token_secret = "secret_token" # 認証 my_auth = tweepy.OAuthHandler(my_consumer_key, my_consumer_secret) my_auth.set_access_token(my_access_token, my_access_token_secret) my_api = tweepy.API(my_auth) my_tweet = "tweet msg" my_image_path = "path of the image" # メディアファイルを添付して投稿 my_status = my_api.update_with_media(my_image_path, my_tweet)
補足:Tweepyのバージョンに関する注意点
上記のコードはTweepy v1系(OAuthHandler / APIクラス)の記法です。Tweepy v4以降ではupdate_with_media()は廃止されており、api.media_upload(画像パス)でメディアをアップロードし、その戻り値のmedia_idをapi.update_status(status=..., media_ids=[...])に渡す形式に変更されています。また、最新のX API v2を利用する場合は、tweepy.Clientクラスを使うことが推奨されています。利用しているTweepyのバージョンに合わせてコードを選択してください。
-
Pythonで作るWebサイトブロッカー ― 業務時間中にSNSへのアクセスを自動遮断する方法
大手IT企業で働いたことがある方なら、FacebookやYouTube、InstagramといったSNS系のWebサイトが社内からアクセスできないよう制限されていることに気づいた経験があるかもしれません。こうした制限は、サードパーティ製アプリに頼らなくても実現できます。自分専用のオリジナルツールを作れば、好きなWebサイトを自由にブロックできるのです。しかもPythonでWebサイトブロッカーを開発するのは、それほど難しいことではありません。この記事では、指定したWebサイトをブロックするPythonスクリプトの作り方を解説します。前提条件Python 3.x がインストールされていることPy
-
PythonでのCX_Freezeの使い方:スクリプトを実行ファイル(EXE)に変換する方法
はじめに 何か面白いものを作りたいという欲求は人間の本能であり、完成したものは誰かに共有したくなるものです。Pythonでもその願いを叶えられます。ただし、作成したPythonスクリプトをそのまま共有するには、相手のマシンにも同じバージョンのPythonと、プログラムで使用しているすべてのモジュールがインストールされている必要があります。 そこで役立つのがCX_Freezeです。このツールを使えば、Pythonがインストールされていない環境でも動作するスタンドアロンの実行ファイル(.exe)を作成できます。 CX_Freezeのインストール まず、コマンドプロンプトで以下のコマンドを実行し、c