Python Twitter client to distribute requests across API keys
Project description
parallel-python-twitter
A client that distributes Twitter API requests across multiple keys. Built for Python 3.6.
Getting Started
First, get your API credentials together and get a list of twitter.Api
objects:
import parallel_twitter
TWITTER_API_CONSUMER_KEY = ...
TWITTER_API_CONSUMER_SECRET = ...
OAUTHS = [
{
'oauth_token': ...,
'oauth_token_secret': ...
},
{
'oauth_token': ...,
'oauth_token_secret': ...
},
...
]
apis = parallel_twitter.oauth_dicts_to_apis(
oauth_dicts=OAUTHS,
api_consumer_key=TWITTER_API_CONSUMER_KEY,
api_consumer_secret=TWITTER_API_CONSUMER_SECRET
)
Next, try out some of the examples:
user_ids = [
561808704, # @neeljsomani
813286, # @BarackObama
17919972 # @taylorswift13
]
# Get a list of posts that these users liked
parallel_twitter.examples.pull_users_likes(
users=user_ids,
apis=apis
)
# Get a list of these users' posts + number of likes
parallel_twitter.examples.pull_users_posts(
users=user_ids,
apis=apis
)
Comparison with Twint
Twint is a Python library for scraping data from Twitter.
- From Twint's documentation: "Twitter limits scrolls while browsing the user timeline. This means that with .Profile or with .Favorites you will be able to get ~3200 tweets." There are no such limits if you distribute your requests using
parallel-python-twitter
. - Twitter will block your requests if you scrape enough (ex: https://github.com/twintproject/twint/issues/682). I've tested
parallel-python-twitter
up to 100s of megabytes. - Technically,
twint
violates Twitter's Terms of Service, since scraping is not permitted in general.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Close
Hashes for parallel-python-twitter-0.2.0.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 457c294305261086f2361258fe78cd6758b5d0fa25bcac2d00af100bdbeea145 |
|
MD5 | f28a12831755703ba8a513f5f9c8ef22 |
|
BLAKE2b-256 | 63b0680df2ee91880bed05865ff714584bfd07a460c7cbace37de25167d42b77 |