7日間無料

X(Twitter)スクレイピング:​最新の​いいね数、​リポスト数、​表示回数

公開プロフィールかポストを貼り付けてください。Web UnlockerがログインなしでXのページを返します。プロフィールならフォロワー数、自己紹介、最新のポスト5件、各ポストには正確ないいね数、リポスト数、返信数、表示回数が載っています。1,000ページで$0.98です。

例:

無料リクエスト1,000件 · 課金は成功時のみ · 195以上の国 · Claude対応

x.com/NatGeo実行例 · フォロワー28M人 · 1ページ分の料金 · 4.6秒
ダウンロード
  1. 米国のIPアドレスからページを開いています
  2. ログアウト状態の訪問者と同じように読み込んでいます
  3. プロフィールまたはポストを読み取っています

Xのページは通常2〜10秒かかります。処理は続いているので、もう一度クリックする必要はありません。

調べたいアカウントで試しますか?APIキーを取得するか、デモを予約してください。

APIキーと無料リクエストを入手

チームについて簡単にご記入いただくと、次の内容をお届けします。

  • 1営業日以内にAPIキーを発行
  • お客様のターゲットサイトで使える無料リクエスト
G2で4.7 / 579件のレビューより
デモを予約

カード登録不要。いつでもキャンセルできます。1営業日以内にご返信します。

X(Twitter)スクレイピングAPIで​取得できる​もの

対象は公開ページで、ログインもXアカウントもX APIキーも不要です。ソーシャルリスニングチーム、代理店、ブランド、AIエージェントが読み取るのは次の2種類のページで、どれも1ページとして課金されます。

  • Twitter プロフィールのスクレイピング

    x.com/NatGeo
    名前
    National Geographic
    フォロワー
    28M
    フォロー中
    179
    ポスト
    73.7K
    利用開始
    2008年11月
    最新のポスト
    5件、正確な数値付き
  • ツイートのスクレイピング

    x.com/NASA/status/2120305504295510080
    いいね数
    4,337
    リポスト数
    685
    返信数
    213
    表示回数
    565,254
    テキスト
    How’s that for a starburst?
    主な返信
    3件、数値付き

ご自身で試してみますか?無料リクエスト1,000件付きのAPIキーを入手しましょう。

Xのポスト1,000件を​X APIの$5ではなく​$0.98で​読み取る

Web Unlockerはポストのページを、正確な返信数、リポスト数、いいね数、表示回数を含めて1回だけ課金し、料金は1,000ページあたり$0.98です。ApifyのTwitterスクレイパーはポストのリンク1件ごとに$0.05、Bright Dataは1,000レコードあたり$1.50を課金します。

X APIはポスト1,000件で$5.00を課金します。
ここでは1,000件が$0.98です。

サービスが応答できなかったリクエストは無料です。テストでは最初の試行50件中6件ですぐに拒否が返りましたが、もう一度リクエストするとページが返りました。

Xのポスト1,000件の料金

いいね数、リポスト数、返信数、表示回数付きの公開ポスト1,000件、公開価格で

  • $0.98Gologin Web Unlocker
  • $1.50Bright Data X Scraper API
  • $5.00公式X API
  • $50.40Twitter Scraper Lite(Apifyベース)

Gologin:1,000ページあたり$0.98で、ポスト1件が1ページです。Bright Dataはレコードごとに課金し、1,000件あたり$1.50です。X APIはポストの読み取り1件あたり$0.005を課金します。ApifyのTwitter Scraper Liteは、ポストのリンク1件ごとに$0.05、さらにポスト1件ごとに$0.0004を課金します。

ご自身のポストで実行しますか?APIキーと無料リクエストを入手しましょう。

X(Twitter)スクレイピング:​50件中​50件が​データ付き

X(Twitter)スクレイピングのテスト:ブランドとクリエイターのプロフィール20件、それぞれの新しいポスト1件ずつ、小規模なアカウント10件を、上のデモと同じく各最大3回までリクエストしました。返ってきた結果と、その速さは次のとおりです。

50件中44件が1回目で返りました。
残りの6件は2回目か3回目で返りました。

X APIと​Twitter​スクレイパーを​比較

公式のX API、ApifyのTwitterスクレイパー、Bright DataのX Scraper API。同じポスト1,000件とプロフィール1,000件にそれぞれいくら課金し、始める前に何が必要かは次のとおりです。

Gologin Web Unlocker、X API、Apify、Bright Dataにおける、課金単位、ポスト1,000件とプロフィール1,000件の料金、必要なアカウント、アカウントの繰り返しチェック、キーワード検索、正確なフォロワー数、無料での開始、ほかのサイトでの料金の比較
必要なものWeb UnlockerX APIApifyBright Data
課金の対象1ページポストかプロフィールごとクエリとポストごとレコードごと
リンク指定のポスト1,000件$0.98$5.00$50.40$1.50
プロフィール1,000件$0.98$10.00$4.40$1.50
開発者アカウント不要必要不要不要
アカウントの繰り返しチェックありあり制限ありあり
キーワード検索なしありありあり
正確なフォロワー数丸めた数ありありあり
無料で開始1,000リクエストなし月$5月5,000件
ほかのサイトでも同じ料金ありなしなしなし

X以外もスクレイピングしますか?Web Unlockerなら、どのページも同じ方法、同じ料金で返します。

X​アカウント100件を​チェック1回​10セントで​モニタリング

プロフィールページには、アカウントの最新ポスト5件が正確ないいね数、リポスト数、返信数、表示回数とともに載っています。100アカウントなら、チェックのたびに新しいポスト500件が$0.098で手に入ります。ApifyのメインのTwitterスクレイパーは、同じクエリを繰り返さないよう求めています。

X APIはポスト1,000件で$5を課金します。
ここではプロフィール200件から1,000件が$0.20です。

PythonやNode.jsで​X(Twitter)の​データを​スクレイピングする​方法

Xはログアウト状態の訪問者に、ページのHTMLの中にデータを入れて送り、各ポストの下には正確な数値があります。Web UnlockerがそのHTMLを返し、数行のコードで読み取れます。「アカウント一覧」タブは小さなTwitterクローラーで、アカウントを渡すと最新のポストをCSVで出力します。

  1. ステップ 01

    APIキーを取得

    上のフォームにご記入ください。キーは1営業日以内にメールで届きます。

  2. ステップ 02

    ページを選ぶ

    フォロワー数と最新のポスト5件ならプロフィール、正確ないいね数、リポスト数、返信数、表示回数ならポストを選びます。

  3. ステップ 03

    データを読み取る

    ページにデータが含まれているか確認し、サービスがすぐに拒否を返したときはもう一度リクエストします。

インストール
pip install requests
実行
GOLOGIN_SCRAPING_API_KEY=your_key python x_profile.py
送信先
https://parsing.webunlocker.gologin.com/v1/scrape
import html
import json
import os
import re
import time
from datetime import datetime, timezone

import requests

username = "NASA"


def scrape(url):
    for attempt in range(3):
        address = url if attempt == 0 else f"{url}?fresh={int(time.time())}"
        response = requests.get(
            "https://parsing.webunlocker.gologin.com/v1/scrape",
            params={"url": address, "geo": "us", "format": "json"},
            headers={"apikey": os.environ["GOLOGIN_SCRAPING_API_KEY"]},
            timeout=90,
        )
        page = response.json().get("data", {}).get("html", "") if response.ok else ""
        if 'role="group"' in page:
            return page
        time.sleep(3)
    raise RuntimeError("The page came back without data, try again later")


def meta(page, name):
    found = re.search(rf'<meta (?:property|name)="{name}" content="([^"]*)"', page)
    return html.unescape(found.group(1)) if found else None


def count(page, word):
    found = re.search(rf">([\d.,]+[KMB]?)</span>\s*<span[^>]*>{word}<", page)
    return found.group(1) if found else None


def text_of(chunk):
    start = chunk.find('aria-label="More"')
    if start < 0:
        return ""
    start = chunk.find("</button>", start) + len("</button>")
    ends = [chunk.find(mark, start) for mark in ('inert=""', "data-press-control", "<video", 'role="group"', "<article")]
    end = min([chunk.rfind("<", 0, at) for at in ends if at > 0] or [len(chunk)])
    words = re.sub(r"<script.*?</script>|<[^>]+>", "", chunk[start:end], flags=re.S)
    return html.unescape(words).strip()


page = scrape(f"https://x.com/{username}")

posts = []
start = 0
for match in re.finditer(r'aria-label="([^"]*)"[^>]*role="group"', page):
    chunk = page[start : match.start()]
    start = match.end()
    link = re.search(r'href="/(\w+)/status/(\d+)', chunk)
    stamp = re.search(r'"timestamp":(\d+)', chunk)
    counts = {word.rstrip("s").replace("replie", "reply"): int(value) for value, word in re.findall(r"(\d+) (\w+)", match.group(1))}
    posts.append(
        {
            "url": f"https://x.com/{link.group(1)}/status/{link.group(2)}",
            "time": datetime.fromtimestamp(int(stamp.group(1)) / 1000, timezone.utc).isoformat() if stamp else None,
            "pinned": ">Pinned</span>" in chunk[: chunk.find("data-post-avatar")],
            "text": text_of(chunk),
            "replies": counts.get("reply", 0),
            "reposts": counts.get("repost", 0),
            "likes": counts.get("like", 0),
            "bookmarks": counts.get("bookmark", 0),
            "views": counts.get("view"),
        }
    )

profile = {
    "username": meta(page, "profile:username"),
    "name": meta(page, "author"),
    "bio": meta(page, "description"),
    "followers": count(page, "Followers"),
    "following": count(page, "Following"),
    "posts": meta(page, "twitter:data1"),
    "joined": meta(page, "twitter:data2"),
    "latest_posts": posts,
}

print(json.dumps(profile, indent=2, ensure_ascii=False))
print(f"@{username}: {profile['followers']} followers, {len(posts)} latest posts with exact counts from one page")

ご自身のアカウント一覧で実行しますか?APIキーと無料リクエストを入手しましょう。

充実した技術スタックの一部

1つのアカウント、1つのプロキシネットワーク、1つのエコシステム。用途に合った製品をお選びください。

ほかのサイトもスクレイピングしますか?Instagram、Reddit、YouTubeのスクレイパー、またはすべてのWebスクレイピングツールをご覧ください。

X(Twitter)スクレイピングに​関する​質問

Twitterスクレイパーとは?

Twitterスクレイパー(現在はXスクレイパーとも呼ばれます)は、公開されているX(旧Twitter)のページを読み取り、データに変えるツールです。プロフィールなら名前、自己紹介、フォロワー数、最新のポスト、ポストならテキスト、日時、返信数、リポスト数、いいね数、表示回数が対象です。Gologin Web UnlockerはTwitterスクレイパーAPIで、ページのアドレスを送ると、そのデータが載ったページを1,000ページあたり$0.98で返します。

2026年でもTwitterをスクレイピングできますか?

はい、ログインなしで可能です。Xは公開プロフィールとポストをログアウト状態の訪問者にも表示し、データはページそのものに含まれています。Web Unlockerはログアウト状態の訪問者として米国のIPアドレスからページを開くため、Xアカウントも、Cookieも、X APIキーも不要です。テストでは50件中50件のページがデータ付きで返りました。

PythonでTwitterスクレイパーを作るには?

requestsライブラリでプロフィールまたはポストのアドレスをWeb Unlockerに送り、ページから数値を読み取ります。上のPythonタブは完全なPython製Twitterスクレイパーで、実際のAPIでテスト済みです。プロフィールのフォロワー数と最新のポスト5件を、正確ないいね数、リポスト数、返信数、表示回数とともに出力します。

APIなしでTwitterをスクレイピングできますか?

はい。公式のX APIはポストを読み取る方法の1つで、公開ページはもう1つの方法です。Web Unlockerはページを読み取るため、開発者アカウントも、X APIの請求も、ポスト読み取り月300万件という上限も関係ありません。

Twitter APIは無料で使えますか?

大量のポストを読み取る用途では使えません。X APIは現在従量課金で、ポストの読み取り1件あたり$0.005、プロフィール1件あたり$0.010、ポストの読み取りは月300万件までです。Web Unlockerには1,000件の無料リクエストが付き、ポストまたはプロフィール1,000件に相当します。

X API 料金はスクレイパーと比べてどうですか?

Twitter APIの料金は現在X APIの料金になり、従量課金です。ポスト1,000件で$5.00、プロフィール1,000件で$10.00です。Web Unlockerはどちらも1,000ページあたり$0.98で、プロフィールページにはすでにアカウントの最新ポスト5件が含まれています。プロフィール200件から取得するポスト1,000件は$0.20です。

100万ツイートをスクレイピングする費用は?

各ポストを個別のリンクから読み取ると、1,000ページあたり$0.98で$980です。プロフィールページから読み取れば、100万件のポストは1ページ5件で200,000ページになり、$196です。X APIは同じ100万件のポストに$5,000を課金します。

Twitterの最新データをリアルタイムでスクレイピングできますか?

はい。リクエストのたびにライブのページを読み込むので、数値はその時点でXが表示しているものです。テストでは同じNASAのポストのいいね数が4,337件、20分後には4,341件でした。

キーワードやハッシュタグでツイートをスクレイピングできますか?

Web Unlockerではできません。Xは検索ページとハッシュタグページをログイン後にしか開かないため、ログアウト状態のリクエストは登録ページに行き着きます。フォローしているアカウントとポストから始めてください。それらのページは公開されており、上の「アカウント一覧」サンプルならリスト全体をまとめてチェックできます。

Twitterの返信やコメントをスクレイピングできますか?

一部は可能です。ポストのページには上位3〜4件の返信が載り、それぞれに投稿者、テキスト、正確ないいね数、リポスト数、表示回数が付いています。返信の一覧全体はログイン後にしか開けません。

Twitterのフォロワーをスクレイピングできますか?

一覧としてはできません。アカウントをフォローしているユーザーは、ログイン後にしか表示されません。フォロワー数は公開されていてどのプロフィールにも付いてきますが、Xがログアウト状態の訪問者に表示するとおり丸められています(92.2M、28M)。ページに正確な数値はありません。ポストの数値はすべて正確です。

プロフィールページからは何件のポストを取得できますか?

Xがログアウト状態の訪問者に表示する最新の5件で、それぞれに正確な返信数、リポスト数、いいね数、ブックマーク数、表示回数が付いています。固定されたポストは最初に表示され、固定と示されます。それより古いポストはリンクから取得します。ポストのページ1つが1リクエストです。

最適なTwitterスクレイパーは?

目的によります。Apifyのスクレイパーはキーワードで検索し、ポストごとに課金します。X APIはすべてを読み取れますが、ポスト1,000件で$5です。Web Unlockerは公開プロフィールやポストのページを正確な数値付きで1ページ1つの料金で返し、Xでもほかのどのサイトでも同じです。

ApifyのTwitterスクレイパーに代わるものはありますか?

はい。ApifyのメインのTwitterスクレイパーは検索しか受け付けず、1クエリあたり最低50件のポストで、同じクエリを繰り返さないよう求めています。単体のポストはLite版で扱い、リンク1件あたり$0.05です。Web Unlockerは、どのプロフィールやポストのリンクも1,000ページあたり$0.98で、必要なだけ何度でも受け付けます。

Twitterのスクレイピングは合法ですか?

ログインなしで読み込めるプロフィールとポストは公開ページです。2024年5月のX Corp.対Bright Data訴訟で、米国連邦裁判所の判事は、公開データのスクレイピングをめぐるXの訴えを棄却しました。何を収集し、どう使うかはお客様の判断ですので、プロジェクトに適用されるルールに照らして確認してください。

AIエージェントはTwitterスクレイパーを使えますか?

はい。エージェントがプロフィールまたはポストのアドレスを同じAPIに送り、ページから数値を読み取ります。MCP & AI Skillsを使えば、作業内容を説明するだけでClaudeがそのツールを作ります。

APIキーと無料リクエストを入手

チームについて簡単にご記入いただくと、次の内容をお届けします。

  • 1営業日以内にAPIキーを発行
  • お客様のターゲットサイトで使える無料リクエスト
G2で4.7 / 579件のレビューより
デモを予約

カード登録不要。いつでもキャンセルできます。1営業日以内にご返信します。