Skip to content

Latest commit

 

History

History

twitter-scraper

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 
 
 

Twitter.com Scraper

This scraper is using scrapfly.io and Python to scrape public X.com (formerly Twitter) posts and user data.

Full tutorial https://scrapfly.io/blog/how-to-scrape-twitter/

The scraping code is located in the twitter.py file. It's fully documented and simplified for educational purposes and the example scraper run code can be found in run.py file.

This scraper scrapes:

  • X.com post data
  • X.com user profile data

What is NOT possible to scrape without login through X.com website:

  • Post replies
  • Post search

For output examples see the ./results directory.

Note: This scraper is only scraping public Twitter data that doesn't require a login to access.

Fair Use Disclaimer

Note that this code is provided free of charge as is, and Scrapfly does not provide free web scraping support or consultation. For any bugs, see the issue tracker.

Setup and Use

This Twitter.com scraper uses Python 3.10 with scrapfly-sdk package which is used to scrape and parse Twitter's data.

  1. Ensure you have Python 3.10 and poetry Python package manager on your system.
  2. Retrieve your Scrapfly API key from https://scrapfly.io/dashboard and set SCRAPFLY_KEY environment variable:
    $ export SCRAPFLY_KEY="YOUR SCRAPFLY KEY"
  3. Clone and install Python environment:
    $ git clone https://github.com/scrapfly/scrapfly-scrapers.git
    $ cd scrapfly-scrapers/twitter-scraper
    $ poetry install
  4. Run example scrape:
    $ poetry run python run.py
  5. Run tests:
    $ poetry install --with dev
    $ poetry run pytest test.py
    # or specific scraping areas
    $ poetry run pytest test.py -k test_user_scraping
    $ poetry run pytest test.py -k test_tweet_scraping