Python 消息';Twitter REST API v1不再处于活动状态。请迁移到API v1.1';

Python 消息';Twitter REST API v1不再处于活动状态。请迁移到API v1.1';,python,twitter,arduino,Python,Twitter,Arduino,这是我不再工作的代码。我收到这样一条消息:“Twitter REST API v1不再处于活动状态。请迁移到API v1.1” Python代码基本上使用Python Twitter库来询问用户“x”的状态,然后获取最后一个状态并搜索术语“#driptwit”。 如果找到,它会将值1发送到串行端口(和)。如果找到#driptwitstop,它将发送一个ASCII值0。最后,它每15秒循环检查一次Twitter帐户,寻找变化 如您所见,下面是您在最后一步中输入从Twitter获得的密钥的地方 我需

这是我不再工作的代码。我收到这样一条消息:“Twitter REST API v1不再处于活动状态。请迁移到API v1.1”

Python代码基本上使用Python Twitter库来询问用户“x”的状态,然后获取最后一个状态并搜索术语“#driptwit”。 如果找到,它会将值1发送到串行端口(和)。如果找到#driptwitstop,它将发送一个ASCII值0。最后,它每15秒循环检查一次Twitter帐户,寻找变化

如您所见,下面是您在最后一步中输入从Twitter获得的密钥的地方

我需要在代码中更改什么来修复它

以下是实际代码:

Enter code here

##Import Libraries``

import twitter
import serial
import time

##Authenticate yourself with Twitter
api = twitter.Api(consumer_key='consumerkeyhere', consumer_secret='consumersecrethere', access_token_key='accesskey', access_token_secret='accesssecret')

##Set to your serial port
ser = serial.Serial('COM3', 19200)

## Check serial port
def checkokay():
    ser.flushInput()
    time.sleep(3)
    line = ser.readline()
    time.sleep(3)

    if line == ' ':
        line = ser.readline()
        print 'here'

    ## Welcome message
    print 'Welcome To Drip Twit!'
    print 'Making Coffee..'

def driptwit():
    status = [ ]
    x = 0

    status = api.GetUserTimeline('X') ##Grab latest statuses

    checkIt = [s.text for s in status] ##Put status in an array

    drip = checkIt[0].split() ##Split first tweet into words

    ## Check for match and write to serial if match
    if drip[0] == '#driptwit':
        print 'Tweet received, making coffee'
        ser.write('1')
    elif drip[0] == '#driptwitstop': ##Break if done
        ser.write('0')
        print 'Stopped, awaiting instructions.'
    else:
        ser.write('0')
        print 'Awaiting tweet'

while 1:
    driptwit() ## Call driptwit function
    time.sleep(15) ## Sleep for 15 seconds to avoid rate limiting.

您的Twitter模块所基于的Twitter API已停止使用。您需要参考更新的Twitter包,该包将使用1.1 API

就像@Madbreaks所说的:你们可以用堆栈溢出问题中的一些解决方案来编写你们自己的


您必须使用他们的1.1编写自己的API,或者找到另一个已经支持1.1的包。错误消息的重要部分是:
u'twitterrestapi v1不再处于活动状态。请迁移到API v1.1。dev.twitter.com/docs/api/1.1/overview。

消息“twitter REST api v1不再处于活动状态。请迁移到API v1.1'

将此更改为

将两者都更改为1.1 twitter/twitteroauth.php:


application/third\u party/hybridauth/hybridauth/Providers/Twitter.php:

您需要更改“导入Twitter”行调用的源代码/文件。此答案可能会有所帮助:感谢快速回复DOK,我不明白我应该做什么返回(最后一次调用):文件“C:\Python27\project\arduino project”,第53行,在driptwit()中,调用driptwit函数文件“C:\Python27\project\arduino project”,第32行,driptwit status=api.GetUserTimeline('x')####在GetUserTimeline data=self中,获取最新状态文件“C:\Python27\lib\site packages\twitter.py”,第2721行,第3869行,在_parseandchecktwitterself._checkforwittererror(数据)文件“C:\Python27\lib\site packages\twitter.py”中,第3894行,在_checkforwittererrorraise TwitterError(数据['errors'])TwitterError:[{u'message:u'twitter REST API v1不再处于活动状态。请迁移到API v1.1..',u'code':68}]这是我得到的输出我该怎么办?我对它不熟悉python@Avi您必须使用他们的1.1编写自己的API,或者找到另一个已经支持1.1的包。错误消息的重要部分是:
u'twitterrestapi v1不再处于活动状态。请迁移到API v1.1。dev.twitter.com/docs/api/1.1/overview.
@Avi一点问题都没有。如果答案解决了你的问题,不要忘记接受它。简单,但有效@imben请粘贴从特定渠道获取提要的完整url谢谢