【问题标题】:Tweepy: Twitter error response: status code = 500Tweepy:Twitter 错误响应:状态码 = 500
【发布时间】:2018-12-28 14:30:44
【问题描述】:

我目前正在尝试使用 tweepy 光标获取给定主题标签的所有推文。为了实现这一点,我创建了下面的函数,该函数将特定主题标签作为参数,并在 csv 文件中写入主题标签的时间戳和用户的关注者数量。 对于某些主题标签,这可以正常工作,并且我得到了我需要的结果(主题标签在 7 天的时间段内出现 - 168 小时),例如用于#promotion。对于其他一些人,执行在大约 6 小时后停止,给出以下错误,例如#WorldEmojiDay 或#marketing。我已经搜索了错误的含义,但我不知道如何处理它......任何帮助将不胜感激。

程序代码:

def hashtag_collect(hashtag_name):

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

    auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
    auth.set_access_token(access_token, access_token_secret)
    api = tweepy.API(auth,wait_on_rate_limit=True,wait_on_rate_limit_notify=True)

    # Open/Create a file to append data
    csvFile = open('data_collect.csv', 'a')
    time_followers = open(('collect_17-07/time_and_followers_%s.csv' % hashtag_name), 'a')
    #Use csv Writer
    csvWriter = csv.writer(csvFile)
    csvWriter_data= csv.writer(time_followers)
    csvWriter_data.writerow(['timestamps','followers'])

    print(hashtag_name)
    dates=['2018-07-12','2018-07-13','2018-07-14','2018-07-15','2018-07-16','2018-07-17','2018-07-18','2018-07-19']
    #print(hashtag_name)
    for i in range(0,len(dates),1):
        print(i,dates[i])
        for tweet in tweepy.Cursor(api.search,q=hashtag_name,count=200,since="2018-07-09", lang='en').items(): #nb: date au format Year-month-day
            #print(i, dates[i])
            csvWriter.writerow([tweet.created_at, tweet.text.encode('utf-8'),tweet.user.followers_count, time.mktime(time.strptime(str(tweet.created_at),"%Y-%m-%d %H:%M:%S"))]) #write date, tweet, nb of followers, timestamp
            csvWriter_data.writerow([time.mktime(time.strptime(str(tweet.created_at),"%Y-%m-%d %H:%M:%S")),tweet.user.followers_count])

返回错误:

Traceback (most recent call last):
  File "collect.py", line 59, in <module>
    hashtag_collect(tag)
  File "collect.py", line 33, in hashtag_collect
    for tweet in tweepy.Cursor(api.search,q=hashtag_name,count=200,since="2018-07-09", lang='en').items(): #nb: date au format Year-month-day
  File "/usr/local/lib/python3.6/dist-packages/tweepy/cursor.py", line 49, in __next__
    return self.next()
  File "/usr/local/lib/python3.6/dist-packages/tweepy/cursor.py", line 197, in next
    self.current_page = self.page_iterator.next()
  File "/usr/local/lib/python3.6/dist-packages/tweepy/cursor.py", line 108, in next
    data = self.method(max_id=self.max_id, parser=RawParser(), *self.args, **self.kargs)
  File "/usr/local/lib/python3.6/dist-packages/tweepy/binder.py", line 250, in _call
    return method.execute()
  File "/usr/local/lib/python3.6/dist-packages/tweepy/binder.py", line 234, in execute
    raise TweepError(error_msg, resp, api_code=api_error_code)
tweepy.error.TweepError: Twitter error response: status code = 500

【问题讨论】:

    标签: python twitter tweepy hashtag


    【解决方案1】:

    这是一个内部服务问题 https://developer.twitter.com/en/docs/basics/response-codes.html

    除了稍后再试之外,您无能为力。

    【讨论】:

    • 欢迎来到 Stack Overflow!虽然链接是分享知识的好方法,但如果它们在未来被破坏,它们将无法真正回答问题。将回答问题的链接的基本内容添加到您的答案中。如果内容太复杂或太大而无法在此处放置,请描述所提出解决方案的总体思路。请记住始终保留指向原始解决方案网站的链接引用。见:How do I write a good answer?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-01-07
    • 2020-12-27
    • 2023-03-19
    • 1970-01-01
    • 1970-01-01
    • 2011-12-21
    • 2018-02-19
    相关资源
    最近更新 更多