Python:推文注解选择器没有属性注解

neekobn8  于 2023-01-03  发布在  Python
关注(0)|答案(1)|浏览(105)

我写了一个小的python脚本来随机选择一条tweet下面的评论,但是找不到解决这个错误的方法。

import random
import tweepy

consumer_key = 'xxx'
consumer_secret = 'xxx'
access_token = 'xxx'
access_token_secret = 'xxx'

auth = tweepy.OAuthHandler(consumer_key, consumer_secret, access_token, access_token_secret)
api = tweepy.API(auth)

tweet_id = "xxx"  # zahlen mit tweet id ersetzten
comments = api.comments(tweet_id)

followed_user = "xxx"  # Ersetzen Sie durch das Handle des Benutzers, nach dem Sie filtern moechten
filtered_comments = [c for c in comments if c.user.screen_name == followed_user]

if filtered_comments:
    winner = random.choice(filtered_comments)
    print(f"Der Gewinner ist @{winner.user.screen_name} mit dem Kommentar: {winner.text}")
else:
    print("Keine Kommentare Gefunden.")

这就是错误所在:属性错误:"API"对象没有属性"comments",当我尝试其他方法时,我得到错误:属性错误:"API"对象没有属性"search",并且我需要经过评估的API访问

fjnneemd

fjnneemd1#

你正在使用的方法似乎不存在于API对象中。你可以查看tweepy的文档来查看可用的方法。
API.search方法在4.0版中被重命名为API.search_tweets,因此您可能需要检查您的tweepy版本。
要解决您的问题,您可以尝试以下操作:

import random
import tweepy

consumer_key = 'xxx'
consumer_secret = 'xxx'
access_token = 'xxx'
access_token_secret = 'xxx'

auth = tweepy.OAuth1UserHandler(consumer_key, consumer_secret, access_token, access_token_secret)
api = tweepy.API(auth)

tweet_id = "xxx"  # zahlen mit tweet id ersetzten
tweet = api.get_status(tweet_id, tweet_mode='extended')

comments = []
for page in tweepy.Cursor(api.search_tweets, q='to:{}'.format(tweet.user.screen_name), in_reply_to_status_id=tweet.id, tweet_mode='extended').pages(100):
    comments.extend(page)

followed_user = "xxx" # Ersetzen Sie durch das Handle des Benutzers, nach dem Sie filtern moechten
filtered_comments = [c for c in comments if c.user.screen_name == followed_user]

if filtered_comments:
    winner = random.choice(filtered_comments)
    print(f"Der Gewinner ist @{winner.user.screen_name} mit dem Kommentar: {winner.text}")
else:
    print("Keine Kommentare Gefunden.")

相关问题