Skip to main content

Implementation of X/Twitter v1, v2, and GraphQL APIs

Project description

Twitter API

Installation

pip install Jam-Twitter-API

Usage

from Jam_Twitter_API.account_sync import TwitterAccountSync
from Jam_Twitter_API.errors import *


# Create a TwitterAccount object
# Set up a session using auth_token or cookies (it will auto create needed headers and cookies)
try:
    account = TwitterAccountSync.run(
        auth_token="0idfidfgdfgidfgijodfgjoidfgijo43",
        proxy="http://user:pass@host:port",
        setup_session=True,
    )

    account = TwitterAccountSync.run(
        cookies={"auth_token": "0idfidfgdfgidfgijodfgjoidfgijo43", "ct0": "0idfidfgdfgidfgijodfgjoidfgijo43"},
        proxy="http://user:pass@host:port",
        setup_session=True,
    )

except TwitterAccountSuspended as error:
    # Raise when account is suspended
    print(f"Account is suspended: {error}")

except TwitterError as error:
    # Raise when Twitter error occurs
    print(f"Twitter error occurred: {error.error_message} | {error.error_code}")

except IncorrectData as error:
    # Raise when validation error occurs
    print(f"Incorrect data provided: {IncorrectData}")

except RateLimitError as error:
    # Raise when rate limit exceeded
    print(f"Rate limit exceeded: {error}")

# A small part of the available methods:
user_tweets = account.user_last_tweets("elonmusk")
user_followers = account.user_followers("elonmusk")
user_following = account.user_followings("elonmusk")

user_info = account.get_user_info("elonmusk")
user_id = account.get_user_id("elonmusk")
follow = account.follow(1000)
unfollow = account.unfollow(1000)

bind_account_to_site_v1 = account.bind_account_v1("url")
bind_account_to_site_v2 = account.bind_account_v2({
    "code_challenge": "test",
    "code_challenge_method": "plain",
    "client_id": "enpfUjhndkdrdHhld29adfg6eGM6MTpjaQ",
    "redirect_uri": "https://www.test.io",
    "response_type": "code",
    "scope": "tweet.read users.read follows.read offline.access",
    "state": "test",
})

tweet_replies = account.tweet_replies(1000000000)
tweet_retweets = account.tweet_retweeters(1000000000)
tweet_likes = account.tweet_likes(1000000000)

tweet = account.tweet("hello world")
untweet = account.untweet(1000000000)

quote = account.quote("hello world", 10000)
retweet = account.retweet(1000000000)

reply = account.reply("hello world", 1000000000)
like = account.like(1000000000)
unlike = account.unlike(1000000000)

update_image = account.update_profile_image("path/to/image.jpg")
update_banner = account.update_profile_banner("path/to/image.jpg")
update_profile_info = account.update_profile_info({"location": "San Francisco"})

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

jam_twitter_api-0.7.tar.gz (39.8 kB view details)

Uploaded Source

Built Distribution

Jam_Twitter_API-0.7-py3-none-any.whl (41.1 kB view details)

Uploaded Python 3

File details

Details for the file jam_twitter_api-0.7.tar.gz.

File metadata

  • Download URL: jam_twitter_api-0.7.tar.gz
  • Upload date:
  • Size: 39.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.11.4

File hashes

Hashes for jam_twitter_api-0.7.tar.gz
Algorithm Hash digest
SHA256 5f2d86d88fa7835b00400fac46f0ecfbb91d388953e9c486e1e0dfeab7a0b998
MD5 60a4f8957bed16a2dcab29f29a69a62d
BLAKE2b-256 f7da0345ebced8c975f923abaf15d058cee7b40034c991214b04fa493545bc9e

See more details on using hashes here.

File details

Details for the file Jam_Twitter_API-0.7-py3-none-any.whl.

File metadata

File hashes

Hashes for Jam_Twitter_API-0.7-py3-none-any.whl
Algorithm Hash digest
SHA256 7f15a754cc546efac8e01e1556b71caf565ddae31eb18f49eaaee9b4468564a4
MD5 d3a025c3782f3433cd78bb5396a21c55
BLAKE2b-256 ad320ae38de28257f662db627c57573f390054d2c8236a85c167195b00b6494e

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page