logo
FR

Twitter Hashtag Post Scraper

Collect public Twitter posts for up to three keywords or hashtags, including authors, content, media links, timestamps, and engagement metrics.

Développeur
YiJacobJohnRaku
Tarifs
0,0003 $US / enregistrement
Dernière mise à jour
2026-09-10

Aperçu

Twitter Hashtag Post Scraper turns a small set of keywords or hashtags into structured public-post records that are ready to filter, compare, and analyze. Each record keeps the matched term, search-result category, post and author links, author name, publication time, post text, media links, advertising indicator, and reported engagement counts.

This dataset helps teams move from scattered social posts to a consistent evidence table. It preserves the text and the surrounding context needed to compare conversations, identify visible authors, inspect recurring themes, and understand which collected posts attracted more engagement at the time of collection.

Data notes

Records come from publicly visible Twitter search results and reflect what the collector could access when the run took place. A record represents one collected post associated with one submitted term and search-result category. The same post address is used to remove duplicates across retrieved result pages. Post timestamps retain the source's displayed UTC offset. Reply, retweet, like, and view counts are snapshots reported at collection time and can change afterward; they are preserved as reported text rather than recalculated values. Image links may point to an image or a video thumbnail, and a reported video link may be the same as the post link. Private, deleted, restricted, and sign-in-only content is not covered.

What the results look like

Each record is one collected public post:

Author namePost contentPost timestampPost URLLike countView count
Republicans against TrumpFlashback — Donald Trump: “If Ivanka weren’t my daughter, perhaps I’d be dating her” — TV host: “Stop it. It's so weird.” #TrumpIsWeird #TBT https://t.co/JOXOCp27CpFri Aug 02 02:17:50 +0000 2024https://x.com/RpsAgainstTrump/status/1819195875580629097333715879786
OgilvyHow to Write – A memo drafted by David Ogilvy on September 7, 1982, for the management to circulate as they saw fit. #TBTThu Sep 03 13:00:20 +0000 2026https://x.com/Ogilvy/status/209549712014066533332713270

The output also includes “Matched term,” “Result category,” “Search page URL,” “Author profile URL,” “Image URL,” “Video URL,” “Ad indicator,” “Reply count,” and “Retweet count.”

Use cases

  • For hashtag conversation research, group records by “Matched term” and review “Post content” to identify recurring topics, claims, and phrases.
  • For visible-author discovery, compare “Author name” and “Author profile URL,” then use “Post URL” to inspect the original public context.
  • For engagement comparisons, evaluate “Reply count,” “Retweet count,” “Like count,” and “View count” together instead of treating one interaction measure as the whole response.
  • For content-format analysis, compare “Image URL,” “Video URL,” and “Post content” to see which collected posts pair text with reported media.

Périmètre et limites

Each run accepts 1 to 3 keywords or hashtags and up to 200 scroll-downs; retrieval is capped at 10,000 public post records per run.

  • Adapté pour
  • Use it when you need a structured snapshot of public Twitter posts associated with a small set of keywords or hashtags.
  • Use it for hashtag monitoring, content research, author discovery, or engagement comparisons.
  • À ne pas utiliser pour
  • Do not use it for private, deleted, restricted, or sign-in-only posts because only content visible to the collector is covered.
  • Do not use it when complete historical coverage or a guaranteed post count is required because availability can change over time.

Gestion des échecs

Comportement en cas d'échec et de nouvelle tentative déclaré par le développeur. Nous vous recommandons de l'inclure dans votre prompt système lors de l'intégration.

  1. 1If a run stops before completion, retry the same small input once; if it stops again, use fewer terms or a smaller scroll-down value.
  2. 2An empty result can mean the term has no visible matching posts or access was temporarily limited; verify the spelling and retry later.

Entrée

Paramètres requis pour appeler cette App, générés à partir de l'input.schema du manifest.json.

  • Keywords or hashtagsquery_termsRequisarray<string>
    Keywords or hashtags to search on Twitter, with one term per item. Enter 1 to 3 terms per run.
    Nombrejusqu'à 3 élémentsExemple["#tbt"]
  • Scroll-down countscroll_down_timesFacultatifinteger
    How many times to load more search results, from 1 to 200. When omitted, the collector decides the depth; set it explicitly when a predictable depth is important.
    Plage1–200

Sortie

Structure des champs d'un enregistrement, générée à partir de l'output.schema du manifest.json.

  • Result categorycategorystring
    Search-result grouping reported for the post, such as TopPost.
    ExempleTopPost
  • Matched termkeywordstring
    Keyword or hashtag associated with the collected post.
    Exemple#tbt
  • Search page URLsearch_page_urlstring
    Twitter search address from which the post was collected.
    Exemplehttps://twitter.com/search?q=#tbt&src=typed_query&f=top
  • Post URLtweet_urlstring
    Direct address of the collected Twitter post.
    Exemplehttps://x.com/RpsAgainstTrump/status/1819195875580629097

Exemple de données

Généré à partir d'output.schema. Les champs sans valeur d'exemple utilisent des espaces réservés structurels.

output.example
{
  "category": "TopPost",
  "keyword": "#tbt",
  "search_page_url": "https://twitter.com/search?q=#tbt&src=typed_query&f=top",
  "tweet_url": "https://x.com/RpsAgainstTrump/status/1819195875580629097",
  "author_name": "Republicans against Trump",
  "author_profile_url": "https://x.com/RpsAgainstTrump",
  "tweet_timestamp": "Fri Aug 02 02:17:50 +0000 2024",
  "tweet_content": "Flashback \n\nDonald Trump: “If Ivanka weren’t my daughter, perhaps I’d be dating her”\n\nTV host: “Stop it. It's so weird.” #TrumpIsWeird #TBT https://t.co/JOXOCp27Cp",
  "image_url": "https://pbs.twimg.com/amplify_video_thumb/1819195812393406464/img/KAyMW9OE6elaK1HB.jpg",
  "video_url": "https://x.com/RpsAgainstTrump/status/1819195875580629097",
  "ad_indicator": "False",
  "reply_count": "2818",
  "retweet_count": "10855",
  "like_count": "33371",
  "view_count": "5879786"
}

Intégration

Cette App peut être intégrée via MCP, API, SDK ou export de fichiers — tous les canaux partagent les mêmes capacités et la même tarification. Chaque requête s'authentifie avec l'en-tête Authorization: Bearer à l'aide d'une API Key (longue durée, créée dans la console Data Hub) ; les clients MCP peuvent aussi se connecter via OAuth, sans clé. D'autres options comme la CLI et Skill arrivent bientôt. Cette App s'exécute de manière asynchrone et peut être annulée en cours de route : Après l'annulation, l'exécution s'arrête. Les enregistrements déjà livrés sont conservés et facturés.

Avec MCP (Model Context Protocol), vous pouvez appeler cette App directement depuis des clients IA comme Claude et Cursor. Choisissez votre client et votre mode d'authentification, puis copiez la config ci-dessous.

Config du client

Remplacez la valeur après Bearer par votre API Key longue durée. Fonctionne dans n'importe quel client, en CI ou en environnement sans navigateur.

mcpServers config
{
  "mcpServers": {
    "octoparse_datahub": {
      "type": "http",
      "url": "https://mcp-v2.octoparse.com?pin=YiJacobJohnRaku/twitter-scraper-by-hashtag",
      "headers": { "Authorization": "Bearer <YOUR_API_KEY>" }
    }
  }
}

Laissez l'IA tout configurer pour vous

Vous ne voulez pas modifier les configs à la main ? Copiez le prompt d'installation et collez-le dans n'importe quel client IA — il effectuera la configuration à sa manière. (Le prompt demande à l'IA de vous réclamer votre API Key, afin que les identifiants ne finissent jamais dans l'historique de conversation ni dans des configs partagées.)

detail.access.mcp.composeHint

Tarifs

returned post record

Facturé selon le nombre d'enregistrements renvoyés avec succès. Les exécutions échouées ne sont pas facturées.

0,0003 $US/ enregistrement

Plusieurs événements de facturation se cumulent indépendamment. Voir chaque élément pour les détails. Les exécutions échouées ne sont pas facturées.

Voir les crédits

Essayer maintenant

Renseignez les paramètres et lancez l'exécution — les résultats proviennent d'un appel réel.

Exemple
Les paramètres sont validés par rapport à l'input.schema avant la soumission
0,0003 $US / enregistrement