1
4
Fork
You've already forked twikit
3
Fork of twikit to make things work better https://twikit.readthedocs.io/en/latest/twikit.html
  • Python 100%
2026年03月24日 15:03:15 +01:00
.github Update FUNDING.yml 2025年02月12日 20:36:17 +09:00
docs curl_cffi changes 2025年09月10日 13:19:53 -04:00
examples Media Stream 2025年01月31日 14:41:49 +09:00
twikit fix: handle new Twitter chunk ID mapping for ondemand.s bundle 2026年03月23日 19:05:08 -07:00
.gitignore Better curl_cffi implementations 2025年10月09日 12:52:19 -04:00
.readthedocs.yaml . 2025年02月06日 00:02:22 +09:00
LICENSE FIxed 2024年12月01日 12:29:18 +09:00
ratelimits.md Update ratelimits.md 2025年09月11日 15:46:20 +02:00
README-ja.md Update README-ja.md 2025年07月06日 15:28:50 +09:00
README-zh.md FIxed 2024年12月01日 12:29:18 +09:00
README.md Update README.md 2025年07月07日 20:14:20 +02:00
requirements.txt curl_cffi changes 2025年09月10日 13:19:53 -04:00
setup.py curl_cffi changes 2025年09月10日 13:19:53 -04:00
ToProtectYourAccount.md FIxed 2024年12月01日 12:29:18 +09:00

phin/twikit

A Simple Twitter API Scraper.

This repo is forked off https://github.com/d60/twikit, credit to d60 for the initial development. this library intends to make an up-to-date fork of Twikit, as the original Twikit library is prone to Twitter's detection.

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

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 git+https://codeberg.org/phin/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,
 cookies_file='cookies.json'
 )
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', 'Tweets')
for tweet in tweets:
 print(tweet.text)

Send a dm

await client.send_dm('123456789', 'Hello')

Get trends

await client.get_trends('trending')

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