消息'Twitter REST API v1不再有效。请迁移到API v1.1'

时间:2013-06-14 17:36:24

标签: python twitter arduino

这是我的Python代码,不再有效。我收到此消息:“Twitter REST API v1不再有效。请迁移到API v1.1”。

Python代码基本上使用Python-Twitter库向Twitter询问用户“x”的状态,然后它获取最后一个状态并搜索术语“#driptwit”。 如果找到,它会将ASCII值1发送到串行端口(以及Arduino)。如果找到#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.

2 个答案:

答案 0 :(得分:4)

消息'Twitter REST API v1不再有效。请迁移到API v1.1'

https://api.twitter.com/1/将其更改为https://api.twitter.com/1.1/

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

应用/ THIRD_PARTY / hybridauth /混合/提供者/ Twitter.php:

答案 1 :(得分:2)

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

就像@Madbreaks所说的那样:您可以使用Stack Overflow问题 Authentication for new Twitter API 1.1 中提供的一些解决方案编写自己的解决方案。

您必须使用1.1编写自己的API,或者找到另一个支持1.1的软件包。错误消息的重要部分是:u'The Twitter REST API v1 is no longer active. Please migrate to API v1.1. dev.twitter.com/docs/api/1.1/overview.'