Twitter(X)に自動投稿してみる
Xって急に言われてもわからないからやはりTwitter(X)呼びが続きそう(2024年11月現在)
今回はPHPのTwitterOAuthを使って自動投稿を制御する
関数とかは簡単だけど、このTwitterOAuthパッケージ(?)を環境に実装するのにめちゃくちゃ苦労した
TwitterOAuthでできること
公式のドキュメント(URL)が参考になる
どうも v2 API が使えるようで、getメソッドとかoauthとか、postあたりを主に使うことになる
今回はテキストの投稿しかしないのでpostメソッドだけ知ってればOK
実装
このAPIを使えるようになるまでがなかなかに苦労したので自分用のメモを兼ねて書く
参照したサイトはこちら(URL)
必要なのは、
- 開発者ポータルで X API Free に登録
- 諸々のトークンを取得
- composerを使ってTwitterOAuthを取ってくる
- コード書く
この開発者ポータルとかいうやつのインターフェースが変更されまくってるのかなんなのか、とにかく使いづらい()
Xさん、スクレイピングされたりBOTたくさん作られたりが嫌らしく、APIの使用範囲とかを文書での提出が求められるしなかなか厄介
今後Freeプランの内容が渋くならないことを祈る
トークンとか諸々を取得したら、TwitterOAuthを使って実際に書いていくのだが、
このTwitterOAuthをどうサーバーに突っ込むかが問題
composerコマンドで引っ張ってくるのが通常の方法なのだが、サーバーの中でコマンド打てるようなプランじゃないし(ケチった弊害)
しょうがないので開発環境のコンテナでcomposer打ってautoloadとかtwitteroauthを取得してこれをそのままサーバに突っ込んだ(強引)
コンテナイメージが最小構成のやつだったのでcomposerに必要なパッケージが不足しまくって苦労(6時間苦戦)
そもそもAPIの公式ドキュメントに書いてあるOpenSSLとcurlすらないしね
正直そんなに容量の厳しいサーバじゃないし、開発環境最小構成じゃなくて良いじゃんとか思わなくもないが
vimとかも入ってないので面倒面倒なのだ
パッケージをcomposerで取得したらあとは楽で、APIの公式ドキュメントとかにしたがってpostメソッドで投稿
一日50投稿までとかの制限があるらしいが、私の使用用途としては試験利用を含めても余裕余裕
意外と自動投稿って簡単なんだなぁ
なお実装合計8時間()
完成品
自動投稿機能の完成品ってなんだよ!
ってことでXアカウントだけ貼っておく
(HappyBirthdayCircle(X))
うまく行けば10月5日から動き出すはず....はず
今後の開発
前回言ってたスマホ対応はどうした→だるい
いつか実装したいねー
Twitter(X)の方の投稿の文章もバリエーション増やしたい(現在1種類のみ)
ま、よかったらサイト(happybirthday-circle.com)の方も投稿の方も見ていってくださいな
【このカテゴリーの最新記事】
-
no image
-
no image