如何转发用户';Python中的tweets(而不是其追随者&x27;tweets/RTs)

如何转发用户';Python中的tweets(而不是其追随者&x27;tweets/RTs),python,twitter,bots,Python,Twitter,Bots,我正在构建一个机器人,它将复制和粘贴来自多个用户(总统选举候选人)的推文。 当我运行代码时,我的机器人实际上是在复制支持者的推文和转发,从而在我的页面上产生疯狂的流量-我只想复制候选人自己从他们的帐户中发出的推文 有人知道怎么做吗 我想: 如果tweetText.startswith('RT@'): 通过 将解决RT问题,但显然不是 这是我的密码: import twitter, sys, json, csv, time # this app is being run by cast labo

我正在构建一个机器人,它将复制和粘贴来自多个用户(总统选举候选人)的推文。 当我运行代码时,我的机器人实际上是在复制支持者的推文和转发,从而在我的页面上产生疯狂的流量-我只想复制候选人自己从他们的帐户中发出的推文

有人知道怎么做吗

我想:
如果tweetText.startswith('RT@'):
通过
将解决RT问题,但显然不是

这是我的密码:

import twitter, sys, json, csv, time

# this app is being run by cast laboratory..@CASTlaboratory (4003669463)
consumer_key=""
consumer_secret=""
access_token=""
access_token_secret=""

auth = twitter.oauth.OAuth(access_token, access_token_secret,consumer_key, consumer_secret)
twitter_api = twitter.Twitter(auth=auth)

#Users we are following: Nicolas Dupont-Aignan, Francois Asselineau, Francois Fillon, Philippe Poutou, Jacques Cheminade, Emmanuel Macron, Nathalie Arthaud, Marine le Pen, Benoit Hamon, Jean Lassalle, Jean Luc Melenchon.

u = "38170599, 200659061, 551669623, 374392774, 150201042, 1976143068, 1003575248, 217749896, 14389177, 102722347, 80820758"

print >>sys.stderr, 'Retweeting everything for users="%s"' % (u)
twitter_stream = twitter.TwitterStream(auth=twitter_api.auth)
stream = twitter_stream.statuses.filter(follow=u)

for tweet in stream:

    tweetText = tweet['text'].encode('utf-8')
    print tweetText
    user = tweet['user']['screen_name']

    if tweetText.startswith('RT @'):
        pass

    else:

        print tweetText
        twitter_api.statuses.update(status = tweetText)
        time.sleep(60)

谢谢大家!

要过滤推文以仅匹配来自您所查看用户的推文,您应该能够执行以下操作:

for tweet in stream:
    tweet_text = tweet['text'].encode('utf-8')
    user_id = tweet['user']['id']
    user_name = tweet['user']['screen_name']

    if user_id in u:
        print '@{}: {}'.format(user_name, tweet_text)
        time.sleep(60)
    else:
        pass

正如在评论中所讨论的,你不应该一刀切地转载来自不同账户的推文。如果这是作业中明确要求你做的事情,也许你应该在回答中强调这一点。

纠正这一点应该不会太难-但是,我很好奇为什么你要复制这些推文的文本而不是实际转发它们,正如转发本身的功能一样。@asongtoruin转发是我最初的目标,但经过大量研究后,它似乎没有得到Twitter API法规的授权。我发现最好的是Tweepy,它可以让我转发多达20条推特。。。如果你知道一些我不知道的事情(你可能知道,因为我在这方面很新),请毫不犹豫地与大家分享:)但除此之外,我对复制和粘贴很在行——我只是将此提要用作我新闻研究的聚合器。这很公平。如果是为了你的学习,你是否愿意把它作为一个推特账号?你需要它保持“实时”吗?或者你同意只存储历史推文的想法吗?是的,我需要它成为一个推特帐户,它也需要是实时的。。。我们以前曾将推文刮到csv文件中(如果这是您想要建议的…?),因此我需要让自己更难:/可以说,您的建议违反了-它认为它是垃圾邮件“如果您反复将他人的帐户信息发布为您自己的(个人简历、推文、URL等)”,这就是你在这里做的事情。