Skip to main content

Twitter API wrapper for python with **no API key required**.

Project description

Number of GitHub stars GitHub commit activity Version Tweet Discord BuyMeACoffee

[日本語] [中文]

Twikit

A Simple Twitter API Scraper

You can use functions such as posting or searching for tweets without an API key using this library.

Discord

[!IMPORTANT] We're planning to discontinue support for synchronous operations starting from version 2 of Twikit. As our codebase has grown, maintaining both synchronous and asynchronous versions has become challenging, impacting our ability to uphold code quality effectively. The release date for version 2 is not yet determined. We recommend transitioning your code to the asynchronous version (twikit_async) as soon as possible. You can find documentation for twikit_async here.

Features

No API Key Required

This library uses scraping and does not require an API key.

Free

This library is free to use.

Functionality

By using Twikit, you can access functionalities such as the following:

  • Create tweets

  • Search tweets

  • Retrieve trending topics

  • etc...

Installing

pip install twikit

Quick Example

Define a client and log in to the account.

import asyncio
from twikit import Client

USERNAME = 'example_user'
EMAIL = 'email@example.com'
PASSWORD = 'password0000'

# Initialize client
client = Client('en-US')

async def main():
    await client.login(
        auth_info_1=USERNAME ,
        auth_info_2=EMAIL,
        password=PASSWORD
    )

asyncio.run(main())

Create a tweet with media attached.

# Upload media files and obtain media_ids
media_ids = [
    await client.upload_media('media1.jpg'),
    await client.upload_media('media2.jpg')
]

# Create a tweet with the provided text and attached media
await client.create_tweet(
    text='Example Tweet',
    media_ids=media_ids
)

Search the latest tweets based on a keyword

tweets = await client.search_tweet('python', 'Latest')

for tweet in tweets:
    print(
        tweet.user.name,
        tweet.text,
        tweet.created_at
    )

Retrieve user tweets

tweets = await client.get_user_tweets('123456', 'Tweet')

for tweet in tweets:
    print(tweet.text)

More Examples: examples

Contributing

If you encounter any bugs or issues, please report them on issues.

If you find this library useful, consider starring this repository⭐️

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

twikit-2.0.0.tar.gz (55.4 kB view details)

Uploaded Source

Built Distribution

twikit-2.0.0-py3-none-any.whl (62.6 kB view details)

Uploaded Python 3

File details

Details for the file twikit-2.0.0.tar.gz.

File metadata

  • Download URL: twikit-2.0.0.tar.gz
  • Upload date:
  • Size: 55.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.5

File hashes

Hashes for twikit-2.0.0.tar.gz
Algorithm Hash digest
SHA256 d5982b1c960c56df401a4f6ac9e12694e01418b59c9df9c96aa047ca27e59e9c
MD5 0e21b8abd6e5242b9c5ef3b11b222e5f
BLAKE2b-256 ae1880f47b2c7781b0ce8c9e8b9f69a13265518893678250d4f020083cc0c780

See more details on using hashes here.

File details

Details for the file twikit-2.0.0-py3-none-any.whl.

File metadata

  • Download URL: twikit-2.0.0-py3-none-any.whl
  • Upload date:
  • Size: 62.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.5

File hashes

Hashes for twikit-2.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 987ad43c511b97c17e41d3780091770dda98ab9093b976ad813131a68386db27
MD5 586b1b22ac5769ba2286124f7bb2d0f8
BLAKE2b-256 306d7deba12cb53384f52adcb866d7639f7e9895e405e8b3162252aed6454004

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