Twitter アカウントには@から始まるスクリーンネームとは別に、各ユーザーに固有に割り当てられた数字数十ケタの「ユーザーID」が存在します。
(例) 私のTwitterアカウントのスクリーンネームは @Pajoca_ で、ユーザーIDは 1082260455937044480
このユーザーIDは、例えば以下のようなサイトで簡単に調べられます。(外部サイト)
ただ、Twitter (X) の仕様変更により外部ツールが使用できなくなるケースが多かったため、外部ツール無しで(自分の端末だけで)ユーザーIDを手軽に調べられるツールを今回改めて作成しました。
ソースコードを掲載しているので、自作のツールに組み込むなどご自由にお使いください。
自分のユーザーIDだけでなく、他の人や鍵アカウントのユーザーID表示にも対応しています。
(外部ツール・APIに依存せずユーザーIDを調べるのに便利だと思います)
※本ツールは自己完結型で外部APIに依存せず動作するので、ツールの実行により自分のアカウント情報が第三者に提供されることはありません。
(単にページのHTMLソース内に含まれているユーザーID文字列を抜き出しているだけです)
Twitter(現X)のユーザーIDを調べるツール
動作条件
PC版ブラウザ (スマホでも実行する手段は存在しますがかなり面倒です。PC推奨)
ソフトのインストールは不要で、最近のブラウザなら基本的にどのブラウザにも対応しているはずです。
(ブラウザで動くブックマークレットなのでOSは問いません)
※最終動作確認:2024/6/20 (Twitter側の仕様変更で使えなくなる日が来るかも)
ブックマークと同じ見た目で、クリックすると簡易的なプログラムを実行できる。
中身はJavaScript。Webページの操作や移動、自動入力などに使える。
TwitterユーザーID表示ツールの導入 (最短10秒)
以下の「ユーザーID表示」ボタンをブラウザのブックマークバーにドラッグ&ドロップするだけで完了です。
使うときは追加した「ユーザーID表示」ボタンをクリックするだけです。
See the Pen
Twitter(現X)で現在表示しているアカウントのユーザーIDを調べるブックマークレット by Pajoca (@Pajoca)
on CodePen.
Pajoca (パジョカ)
はこのソースコードの全ての著作権および関連する権利をCC0により放棄しています。
お使いのブラウザでブックマークバーが表示されていない場合は、以下のショートカットキーを押すことで表示・非表示の切り替えができます。
Ctrl+Shift+B (Chrome/Firefox/Edge)
(ブックマークバーの場所はアドレスバーのすぐ下です)
※ボタン名「ユーザーID表示」は導入後、好きな名前に変更しても問題ありません。
使い方
ユーザーIDを調べたいアカウントのプロフィールページに移動して、先ほど追加した「ユーザーID表示」ボタンをクリックするだけです。
すると、ユーザーIDが表示されます。表示されたIDは選択してコピー可能です。
ユーザーIDは自分のアカウントだけでなく、他人のアカウントについても表示できます。
鍵アカウントの場合でも、プロフィールページでツールを実行すれば同様にユーザーIDを表示できます。
(外部ツールだと鍵アカウントからのユーザーID取得が無理な場合もありますが、本ツールは大丈夫です)
ユーザーIDの使い道
あるアカウントへの半永久リンクの取得
スクリーンネーム (@から始まるやつ) はユーザーが自由に変更できてしまいますが、ユーザーID は一切変更できません。
アカウント作成直後からずっと同じ値なので、このユーザーIDさえメモっておけばアカウントが唐突にスクリーンネームを変更してもリンク切れにならず追跡可能です。
ユーザーIDから該当アカウントにアクセスするには以下のURLを使用します。
例えば私のアカウント (ユーザーID:1082260455937044480) なら
https://x.com/i/user/1082260455937044480
にアクセスすればたとえ私がスクリーンネームを変更しても、影響を受けること無く私のアカウントにアクセスしつづけることが可能です。
ツイートにDM返信ボタンを追加する裏技への応用
自分のユーザーIDが分かれば、自分のDMボックスへの直リンクを取得できます。
これを使うと上記画像のように、自分のツイートにDMボタン「メッセージで返信」を表示できます。
詳しい方法は以下の記事をご覧ください。
ツールの原理・開発者向け情報
原理
本ツールはTwitterのAPIを直接使用してはいません。
Twitterのプロフィールページにアクセスすると、ページのHTMLソース内に現在表示しているアカウントのユーザーID文字列が載っているのでそれを抜き出しているだけです。
具体的には、<head> タグ内の <script> 要素の中に、表示されているアカウントのプロフィール情報 (アカウント名・スクリーンネーム・ユーザーID・アカウント説明文・アカウント開設日…) がJSON形式で格納されているので、そこから情報を取り出しています。
ソースコードはこちらのページで閲覧できます。
大まかな処理の流れ
- ページ上の全ての<script>要素の中から、type属性が application/ld+json のものを探索
- その<script>要素のJSONを読み取り、@type が ProfilePage であるものを探索 (これが目的のJSON)
- そのJSONから、author.identifier を読み取る (これがユーザーID文字列)
ちなみに謎なことに、条件不明で目的のJSONが2つヒットしてしまうことがあります。
2つヒットした場合は (今のところは必ず) 2つ目のJSONが表示アカウントのユーザーIDなのでこちらを取得するようにコード上では処理しています。
(1つ目のJSONには自分自身のアカウント情報や、直近で閲覧した別アカウントのアカウント情報が格納されているみたいです)
ソースコードの利用について
本ツールは著作権を完全に放棄して CC0 1.0 の下で公開・配布しています。
つまり、ツール本体もソースコードも自由に変更・再配布可能で一切の許諾・クレジット表示なしに自由にお使いいただけます。
(利用ケースは謎ですが、勝手に商用利用することも可能です。ただしその場合は別途 X 側の利用規約もご参照ください)
その際には私(@Pajoca_)への事後報告ももちろん不要です!
注意事項 (免責事項)
ただしCC0にて明記されている通り、本ツールにはいかなる保証もせず、ご利用により発生したいかなる損害にも責任を負いかねますのでその点はご了承ください。
(ツールは私の気付いた限りバグを修正していますが、未発見・予期しないバグが存在しているかもしれません。それらによるユーザーの損失について作者は一切責任を負いかねます。また、作者はサポートの義務を負わないものとします)
更新履歴
2024/06/20 | 初版公開 |