本文へ移動
仕事実践ラボ
, ,

AIの「投稿完了」を信じず、X自動投稿をAPI方式へ切り替えた実録|8ファイル711行を作成

AIの「投稿完了」を信じず、X自動投稿をAPI方式へ切り替えた実録|8ファイル711行を作成の内容を表すアイキャッチ画像

予約投稿の完了表示が出た後、指定時刻を過ぎてもXの公開画面には投稿がありませんでした。AIの画面内報告を成功条件にせず、外部のX上に投稿が存在するかを確認する方式へ変えました。

ブラウザー投稿を繰り返さずAPI方式へ切り替え、8ファイル・711行の土台を作りました。本番自動投稿は未完成です。

ブラウザー投稿の失敗を一つの時系列で確認した

  1. 投稿ボタン直前まで進んでも最終送信が制限された
  2. 予約投稿完了と報告されたが、指定時刻後も公開画面に投稿がなかった
  3. 再試行では内容が無効という表示が出た
  4. 通常ブラウザーで手動操作した場合は投稿できた

ここで、操作画面の完了と外部サービス上の公開を別の結果として扱いました。

成功条件をXの外部状態へ変えた

成功と記録する条件を、予約一覧に対象があること、再読み込み後も状態が残ること、指定時刻後に公開画面で投稿を確認できることへ変更しました。

「エラーが出なかった」「完了と表示された」は条件から外しました。外部に投稿が存在しなければ、送信成功とは扱いません。

同じ再試行を止めAPI方式へ切り替えた

不安定なままブラウザー操作を続けると、未投稿を完了扱いしたり、意図しない重複投稿を起こしたりする可能性があります。そこで公式APIを使う設計へ変更しました。

目的はすぐ本番投稿することではなく、送信前の検証、ドライラン、重複防止、実行ログを自分で確認できる土台を作ることです。

8ファイル・711行はテスト基盤として作った

作成記録

  • 構成:8ファイル
  • 追加行数:711行
  • 標準動作:送信しないドライラン
  • 本番送信:明示指定時だけ動く設計
  • 現在の実ファイル行数:要店長確認

使い方、認証情報の見本、投稿CSV、共通処理、入力検証、ドライラン、当日投稿、実行ログを分けました。コード作成と本番送信は別工程です。

認証情報と本番未完成を隠さない

設定中に認証情報が見える状態になったため、その情報を使い続けず再発行する判断をしました。記事には実際の値を残していません。現在の再発行状況は店長確認が必要です。

Python実行、API認証、1件の本番送信、外部公開確認、定刻実行は未完了です。8ファイル・711行を作ったことを「自動投稿完成」とは扱いません。

前の記事
次の記事