Twitter API v2を使ってPHPとPythonでツイートしてみた話

PHPとPythonでTwitter API v2を使ってツイート
  • URLをコピーしました!

ずっとTwitter API v1.1を使っていたのですが、さすがに期限が近づいてきたのでv2へと変更することにしました。

目次

準備するもの

Twitter Developer Portalから取得するもの

Consumer Keys

  • API Key
  • API Key Secret

Authentication Tokens

  • Access Token
  • Access Token Secret

Access Token and Secret のパーミッションが「Read and Write」になっていないとツイートできません。

アプリのパーミッション設定
Read」のみの場合は、User authentication settings から 「Read and Write」を選択しましょう。

アプリのパーミッション設定画面へアプリのパーミッション設定
パーミッションを変更した場合は、Access Tokenの作り直しが必要です。

準備するライブラリ

PHPとPythonでそれぞれ必要なライブラリを準備します。

PHPのライブラリ

composerでインストールするのが簡単です。

$ cd /var/www/html/プログラムを実行したい場所
$ composer require abraham/twitteroauth

Pythonのライブラリ

pipでインストールするのが簡単です。

$ python -m pip install tweepy

TweepyをTwitter API v2で使う場合は、Tweepy v4.3.0以上が必要です。
既にインストールされていて、バージョンが古い場合はアップデートしましょう。
アップデートの場合は、以下のコマンドです。

$ python -m pip install -U tweepy

PHPでツイートする

PHPでツイートする場合は、以下のようなプログラムになります。

//ライブラリ
require __DIR__ . '/vendor/autoload.php';

use Abraham\TwitterOAuth\TwitterOAuth;

//Twitter Developer Portalから取得したキーを設定
$consumer_key = '<API KEY>';
$consumer_secret = '<API KEY SECRET>';
$access_token = '<ACCESS TOKEN>';
$access_token_secret = '<ACCESS TOKEN SECRET>';

//ツイート内容
$content = 'ツイート内容';

//認証
$client = new TwitterOAuth($consumer_key, $consumer_secret, $access_token, $access_token_secret);

//v2使用を宣言
$client->setApiVersion('2');

//ツイート
$client->post('tweets', ['text' => $content], true);

$client->setApiVersion(‘2’);
これを入れないと、v1.1を使用するので注意

Pythonでツイートする

Pythonでツイートする場合は、以下のようなプログラムになります。

#ライブラリ
import tweepy

#Twitter Developer Portalから取得したキーを設定
ck = '<API KEY>'
cs = '<API KEY SECRET>'
at = '<ACCESS TOKEN>'
ats = '<ACCESS TOKEN SECRET>'

#ツイート内容
content = 'ツイート内容'

#認証
client = tweepy.Client(consumer_key=ck, consumer_secret=cs, access_token=at, access_token_secret=ats)

#ツイート
client.create_tweet(text=content)

関連リンク先

PHPとPythonでTwitter API v2を使ってツイート

この記事が気に入ったら
フォローしてね!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次