Библиотека Twikit возвращает 400 при попытке войти в системуPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Библиотека Twikit возвращает 400 при попытке войти в систему

Сообщение Anonymous »

Я работаю с Twikit, чтобы получить некоторые данные с сайта Twitter. Однако при попытке войти в учетную запись, созданную для этого проекта, я столкнулся со следующей ошибкой.
Это ошибка:

Код: Выделить всё

twikit.errors.BadRequest: status: 400, message: "{"errors":[{"code":366,"message":"flow name LoginFlow is currently not accessible"}]}"
Я попробовал использовать другую учетную запись и удалить файлы cookie на своем компьютере. Но у меня ничего не помогло.
Это мой код:

Код: Выделить всё

import os
import os.path

from dotenv import load_dotenv
import asyncio
import csv

load_dotenv()

# Import credentials
USERNAME = os.getenv("USERNAME")
PASSWORD = os.getenv("PASSWORD")
EMAIL = os.getenv("EMAIL")

client = Client("en-US")

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

async def search_and_download(key_word):
query = f"{key_word} lang:en -login -support since:2023-01-01 until:2024-10-01"

tweets = await client.search_tweet(
query=query
)

# Save tweets in csv file
file_path = 'files/raw/twitter/tweets.csv'
file_exists = os.path.isfile(file_path)

with open(file_path, mode='a', newline='', encoding='utf-8') as file:
writer = csv.writer(file)
if not file_exists:
writer.writerow(['id', 'user', 'text', 'created_at'])

# Process and save tweets
print(f"Downloading tweets for: {key_word}...")
for tweet in tweets:
writer.writerow([tweet.id, tweet.user.name, tweet.text, tweet.created_at])

print(f"Tweets saved for keyword: {key_word}")

async def main():
await login()

# Group similar key words and include sentiment-related terms
key_words_files = ["binance_trends.csv", "bitcoin_trends.csv",  "cardano_trends.csv",  "crypto_trends.csv",  "ethereum_trends.csv"]
key_words = []

for file in key_words_files:
with open("keywords/"+ file, mode='r', encoding='utf-8') as file:
reader = csv.reader(file)
for row in reader:
key_words.append(row[0])

key_words = [kw for kw in key_words if kw not in ["keywords", ""]]

# Additional sentiment-related terms
sentiment_terms = [
"profit", "loss", "bullish", "bearish", "crash", "rise", "sell-off", "moon", "panic"
]

# Group key words with sentiment-related terms
extended_key_words = []
for kw in key_words:
for sentiment in sentiment_terms:
extended_key_words.append(f"{kw} {sentiment}")
extended_key_words.append(kw)

# Search and download tweets for every key word with sentiment context
for key_word in extended_key_words:
await search_and_download(key_word, "Latest")

if __name__ == "__main__":
asyncio.run(main())
Есть предложения по исправлению этой проблемы?
Кроме того, раньше этот код работал без каких-либо проблем. Эта проблема началась пару дней назад.

Подробнее здесь: https://stackoverflow.com/questions/791 ... g-to-login
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»