Scweet
Scrape tweets, profiles, followers and more from Twitter/X — no API key needed
What it is and what it does
Scweet is a Python library that scrapes public tweets, user profiles, followers, and following lists from Twitter/X by calling the platform's internal GraphQL API. It authenticates using browser cookies (auth_token) rather than an official API key, making it accessible without a developer account. The library stores credentials and account state in a local SQLite database (scweet_state.db), supports both synchronous and asynchronous APIs, and can save results to CSV or JSON.
It's designed for researchers, data collectors, and developers who need to extract Twitter/X data at scale. The package includes built-in support for multiple accounts, per-account proxies, resume functionality for interrupted scrapes, and a CLI interface. It depends on sqlmodel and SQLAlchemy for state management, curl_cffi for HTTP requests, and pydantic for data validation. The library can also run hosted on Apify with no local setup required.
Use it for:
- Search and archive tweets by keyword, hashtag, date range, or engagement filters without an official API key.
- Download a user's full tweet history or profile metadata for analysis or backup.
- Collect follower/following lists at scale using multiple dedicated accounts with rotating proxies.
- Resume interrupted large-scale scrapes from a checkpoint without losing progress.
- Run scraping jobs via CLI or Python API with automatic CSV/JSON export.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Scrape tweets, profiles, followers, and user data from Twitter/X using the platform's internal GraphQL API, authenticated with browser cookies instead of an official API key.
Yes, if you need to scrape Twitter/X data and don't have or want an official API key. The package is actively maintained, has no known vulnerabilities, and works as of June 2026. Install it for research, archival, or data collection tasks. Caveat: requires dedicated X accounts (never use personal accounts), browser cookie extraction, and likely proxies for any serious volume; X's undocumented endpoints can break after platform changes.
Install
scweet on PyPI
pip
pip install scweetuv
uv add scweetpoetry
poetry add scweetInstalling Scweet
Before you install
Low friction — pure Python wheel with six runtime dependencies (python-dotenv, sqlmodel, SQLAlchemy, curl_cffi, XClientTransaction, pydantic). Actively maintained as of June 2026 with 1594 repository stars and recent releases.
License in practice
MIT license (permissive) — you can use, modify, and distribute Scweet freely in commercial and private projects with minimal restrictions.
Quickstart
pip install -U Scweet
from Scweet import Scweet
s = Scweet(auth_token="YOUR_AUTH_TOKEN")
tweets = s.search("bitcoin", since="2025-01-01", limit=500, save=True)
Requires a valid X/Twitter auth_token extracted from browser cookies (F12 → Application → Cookies → x.com → auth_token); username/password login is not supported.
Verify before relying
- Whether curl_cffi and XClientTransaction are stable, well-maintained dependencies or carry their own risk profile.
- Current rate limits and typical throughput per account per day in production use.
- Reliability of the self-healing manifest scrape feature (manifest_scrape_on_init=True) after X platform changes.
Package facts
| License | MIT (permissive) |
| Python support | supports the current Python release (>=3.9) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 6 — python-dotenv, sqlmodel, SQLAlchemy, curl_cffi, XClientTransaction, pydantic |
| Maintenance | actively maintained — 122 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 140,986/month — #11,256 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: scweet-5.3-py3-none-any.whl
Keywords: twitter, x, scraper, twitter-scraper, x-scraper, tweets, tweet-search, twitter-search, followers, following, twitter-api-alternative, graphql, web-scraping, social-media, data-collection, python
Tags
More Python Modules packages
Converts domain names between Unicode and…
permissive · top 100 on PyPI
setuptoolsSetuptools is a Python build backend and…
permissive · top 100 on PyPI
PyYAMLPyYAML parses and emits YAML 1.1 data format,…
permissive · top 100 on PyPI
pydanticPydantic validates Python data structures…
permissive · top 100 on PyPI
annotated-typesProvides reusable metadata objects for use with…
permissive · top 100 on PyPI
typing-inspectionProvides runtime tools to inspect and…
permissive · top 100 on PyPI
oxylabsOfficial Python client for Oxylabs web scraping…
permissive · top 15,000 on PyPI
snscrapeScrapes user profiles, posts, hashtags, and…
copyleft · top 15,000 on PyPI
twscrapetwscrape is an async Python library and CLI for…
permissive · top 15,000 on PyPI
xclienttransactionGenerates X-Client-Transaction-ID headers for…
permissive · top 15,000 on PyPI
tweepyTweepy is a Python library that provides access…
permissive · top 5,000 on PyPI
twikitTwikit is a Twitter scraper library that lets…
permissive · top 15,000 on PyPI
soundcloud-v2A Python wrapper for SoundCloud's internal v2…
permissive · top 15,000 on PyPI
TikTokApiUnofficial Python wrapper for retrieving public…
permissive · top 15,000 on PyPI
twythonTwython is a Python wrapper for the Twitter API…
permissive · top 15,000 on PyPI
python-jobspyScrapes job postings from LinkedIn, Indeed,…
unclear · top 15,000 on PyPI