A collection of Twitter-related helper functions for python.
Project description
Twitwi
A collection of Twitter-related helper functions for python.
Installation
You can install twitwi
with pip with the following command:
pip install twitwi
Usage
Normalization functions
Formatting functions
Useful constants (under twitwi.constants)
normalize_tweets_payload_v2
Function taking an entire tweets payload from the v2 API and returning a list of the contained tweets normalized and structured in a way that makes further analysis of the data convenient.
from twitwi import normalize_tweets_payload_v2
# Normalizing an entire tweets payload to extract a list of tweets
normalize_tweets_payload_v2(payload)
# Normalizing an entire tweets payload to extract a list of tweets
# as well as the referenced tweets (quoted, retweeted, etc.)
normalize_tweets_payload_v2(payload, extract_referenced_tweets=True)
# Converting found dates to a chosen timezone
from pytz import timezone
paris_tz = timezone('Europe/Paris')
normalize_tweets_payload_v2(payload, locale=paris_tz)
Arguments
- payload (dict): tweets payload coming from Twitter API v2.
- locale (pytz.timezone, optional): timezone used to convert dates. If not given, will default to UTC.
- extract_referenced_tweets (bool, optional): whether to keep referenced tweets (retweeted, quoted etc.) in the output. Defaults to
False
. - collection_source *(string, optional): An optional information to add to the tweets to indicate whence you collected them.
transform_tweet_into_csv_dict
Function transforming (i.e. mutating, so beware) a given normalized tweet into a suitable dict able to be written by a csv.DictWriter
as a row.
from twitwi import transform_tweet_into_csv_dict
# The function returns nothing, `normalized_tweet` has been mutated
transform_tweet_into_csv_dict(normalized_tweet)
transform_user_into_csv_dict
Function transforming (i.e. mutating, so beware) a given normalized Twitter user into a suitable dict able to be written by a csv.DictWriter
as a row.
from twitwi import transform_user_into_csv_dict
# The function returns nothing, `normalized_user` has been mutated
transform_user_into_csv_dict(normalized_user)
format_tweet_as_csv_row
Function formatting the given normalized tweet as a list able to be written by a csv.writer
as a row.
from twitwi import format_tweet_as_csv_row
row = format_tweet_as_csv_row(normalized_tweet)
format_user_as_csv_row
Function formatting the given normalized Twitter user as a list able to be written by a csv.writer
as a row.
from twitwi import format_user_as_csv_row
row = format_user_as_csv_row(normalized_user)
TWEET_FIELDS
List of tweet field names. Useful to declare headers with csv writers:
from twitwi.constants import TWEET_FIELDS
# Using csv.writer
w = csv.writer(f)
w.writerow(TWEET_FIELDS)
# Using csv.DictWriter
w = csv.DictWriter(f, fieldnames=TWEET_FIELDS)
w.writeheader()
USER_FIELDS
from twitwi.constants import USER_FIELDS
# Using csv.writer
w = csv.writer(f)
w.writerow(USER_FIELDS)
# Using csv.DictWriter
w = csv.DictWriter(f, fieldnames=USER_FIELDS)
w.writeheader()
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.