X-Cavator avatar

X-Cavator

Pricing

from $0.30 / 1,000 standard tweets

Go to Apify Store
X-Cavator

X-Cavator

The fastest X.com scraper at $0.30/1k tweets — with built-in AI Sentiment Analysis (0.0 to 1.0 scale). 600+ tweets/min, zero browser overhead, advanced filters included.

Pricing

from $0.30 / 1,000 standard tweets

Rating

5.0

(6)

Developer

Knowten

Knowten

Maintained by Community

Actor stats

2

Bookmarked

19

Total users

4

Monthly active users

18 hours ago

Last modified

Share


TL;DR

X-Cavator scrapes X.com at 600+ tweets per minute. It can optionally enrich each tweet with a decimal AI Sentiment Score from 0.00 to 1.00, where 0.50 means objective or neutral.

Quick start:

{
"searchTerms": ["from:NASA"],
"sort": "Latest",
"maxItems": 1000
}

AI Sentiment Score

When Premium AI is enabled, each tweet gets a decimal sentimentScore.

ScoreMeaning
1.00Extremely positive
0.75Positive
0.50Neutral / objective
0.25Negative
0.00Extremely negative

Implementation notes:

  • Shorter sentence-level analysis improves precision.
  • Objective content stays at 0.50.
  • Mixed tweets are aggregated from sentence scores.
  • The prompt is kept compact to reduce token usage.

Example output:

{
"type": "tweet",
"id": "1728108619189874825",
"text": "This product completely changed my workflow, absolutely love it!",
"sentimentScore": 0.91,
"likeCount": 8400,
"retweetCount": 1230,
"lang": "en",
"author": {
"userName": "techreviewer",
"followers": 58200,
"isBlueVerified": true
}
}

Query Builder

You can pass full raw queries directly:

artemis (from:NASA OR from:SpaceX OR from:elonmusk)

Or build the same search with structured input:

{
"searchTerms": ["artemis"],
"tweetAuthors": ["NASA", "SpaceX", "elonmusk"],
"sort": "Latest",
"maxItems": 200
}

twitterHandles still scrapes profile timelines directly. tweetAuthors is for filtering search queries across multiple authors.


Input Parameters

FieldTypeDescriptionDefault
searchTermsarrayKeywords, hashtags, or full advanced search queries[]
twitterHandlesarrayProfiles to scrape directly; if there are multiple handles, the quota is split evenly between them[]
maxItemsnumberMax tweets to extract across all queries and profiles; for multiple twitterHandles, this total is divided evenly100
sortstringLatest or TopLatest
tweetLanguagestringISO 639-1 language codeall
startDatestringOnly get tweets after this datenull
endDatestringOnly get tweets before this datenull
onlyVerifiedUsersbooleanRestrict to verified accountsfalse
onlyTwitterBluebooleanRestrict to Twitter Blue accountsfalse
onlyImagebooleanOnly tweets with imagesfalse
onlyVideobooleanOnly tweets with videofalse
onlyQuotebooleanOnly quote tweetsfalse
tweetAuthorstringFilter by one author handle; comma-separated handles are also acceptednull
tweetAuthorsarrayFilter search results to multiple author handles joined with OR[]
mentioningstringOnly tweets mentioning this handlenull
inReplyTostringOnly replies to this handlenull
minimumFavoritesnumberMin likes thresholdnull
minimumRetweetsnumberMin retweets thresholdnull
minimumRepliesnumberMin replies thresholdnull
geotaggedNearstringLocation namenull
withinRadiusstringRadius for geotaggedNearnull
geocodestringStrict geo via lat,long,radiusnull
enablePremiumAibooleanAdd decimal AI sentiment scoring per tweetfalse

Usage Examples

Scrape a profile:

{ "twitterHandles": ["NASA"], "maxItems": 500 }

Scrape multiple profiles with an even split:

{ "twitterHandles": ["NASA", "elonmusk", "SpaceX"], "maxItems": 100 }

This runs as 34 + 33 + 33.

Search with date range:

{
"searchTerms": ["artificial intelligence since:2024-01-01 until:2024-12-31"],
"sort": "Top",
"maxItems": 2000
}

Brand sentiment monitoring:

{
"searchTerms": ["Tesla", "@Tesla"],
"sort": "Latest",
"maxItems": 5000,
"enablePremiumAi": true
}

Search a topic across multiple authors:

{
"searchTerms": ["artemis"],
"tweetAuthors": ["NASA", "SpaceX", "elonmusk"],
"sort": "Latest",
"maxItems": 200
}

Output Schema

{
"type": "tweet",
"id": "1728108619189874825",
"url": "https://x.com/elonmusk/status/1728108619189874825",
"text": "More than 10 per human on average",
"sentimentScore": 0.34,
"likeCount": 104121,
"retweetCount": 11311,
"replyCount": 6526,
"quoteCount": 2915,
"bookmarkCount": 702,
"lang": "en",
"createdAt": "Fri Nov 24 17:49:36 +0000 2023",
"isReply": false,
"isRetweet": false,
"isQuote": true,
"author": {
"userName": "elonmusk",
"name": "Elon Musk",
"followers": 172669889,
"isVerified": true,
"isBlueVerified": true,
"profilePicture": "https://pbs.twimg.com/profile_images/..."
}
}

sentimentScore is only present when Premium AI is enabled. 0.50 means objective or neutral.


Troubleshooting

ProblemSolution
Getting 0 resultsCheck if your query is too restrictive. Test it on twitter.com/search first.
Fewer results than expectedTry Top instead of Latest. Some periods have lower search coverage.
AI not runningMake sure enablePremiumAi is true.
Missing tweetsX may suppress or limit some content. Try a different date range or sort mode.

Ethical Use

X-Cavator extracts publicly available data only. Users are responsible for complying with applicable privacy and data protection rules when handling results.