TypeError:使用Yelp、Twitter API和Markov B时无法处理的类型

2024-06-17 11:20:21 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试做一个机器人,将采取前140个字符的评论在Yelp和推特它每隔1小时。我能够从Yelp中检索到一般信息,但是当我试图发布它时,我只得到错误“TypeError:unhable type”。我认为这与Python无法从Yelp提供的列表中读取内容有关,但我不确定。在当前的状态下,我的代码只提供有关业务的信息,而不是具体的评论,所以如果有人能帮我解决这个问题那就太好了

以下是相关代码:

def tweetResponse(resp):
tweet = resp
print (tweet[0:140])

access_token = (omitted)
access_token_secret = (omitted)
consumer_key = (omitted)
consumer_secret = (omitted)

economistbot.twitter_login(consumer_key,consumer_secret,access_token,access_token_secret)
targetstring = None
keywords = None
prefix = None
suffix = None
maxconvdepth = 5

economistbot.twitter_tweeting_start(days=0,hours=1,minutes=0,keywords=None,prefix = None,suffix='#EconomistBot')
time.sleep(20)
pass

2

def main():
parser = argparse.ArgumentParser()

parser.add_argument('-q', '--term', dest='term', default=DEFAULT_TERM,
                    type=str, help='Search term (default: %(default)s)')
parser.add_argument('-l', '--location', dest='location',
                    default=DEFAULT_LOCATION, type=str,
                    help='Search location (default: %(default)s)')

input_values = parser.parse_args()

try:
    resp = query_api(input_values.term, input_values.location)
    print "test"
    print resp
    tweetResponse(resp)
except urllib2.HTTPError as error:
    sys.exit(
        'Encountered HTTP error {0} on {1}:\n {2}\nAbort program.'.format(
            error.code,
            error.url,
            error.read(),
        )
    )


if __name__ == '__main__':
main()

下面是错误信息:

Traceback (most recent call last):
  File "/Users/rayyanmerchant/Desktop/ChatBots/YelpTwitBOt", line 181, in <module>
main()
  File "/Users/rayyanmerchant/Desktop/ChatBots/YelpTwitBOt", line 169, in main
  tweetResponse(resp)
  File "/Users/rayyanmerchant/Desktop/ChatBots/YelpTwitBOt", line 20, in 
tweetResponse
print (tweet[0:140])
TypeError: unhashable type

提前谢谢!:)


Tags: tokennonedefaultparsersecretaccessconsumermain