从文件中读取API密钥时,我遇到“错误验证”错误:
#!/usr/local/bin/python
import tweepy
#open a file called "keys" with keys and tokens for Twitter separated by newlines
keyFile = open('keys', 'r')
consumer_key = keyFile.readline()
consumer_secret = keyFile.readline()
access_token = keyFile.readline()
access_token_secret = keyFile.readline()
keyFile.close()
print "consumer key: " + consumer_key
print "consumer secret: " + consumer_secret
print "access token: " + access_token
print "access token secret: " + access_token_secret
auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(access_token, access_token_secret)
如果我手动设置我的密钥,就像使用consumer_key = "xxx"
一样,它可以正常工作。从文件中读取时,有关原因的任何提示都不起作用?感谢。
答案 0 :(得分:2)
所以事实证明Python也在阅读换行符。解决方案是使用rstrip()删除隐藏的字符:
consumer_key = keyFile.readline().rstrip()
答案 1 :(得分:1)
keys.txt
文件有4行,包括consumer_key
,consumer_secret
,access_token
和access_token_secret
,每行分别排成一行,所以我们先读取所有行具有keys.txt
方法的readlines
文件。我们需要使用.rstrip()
来从每个字符串的末尾(或其他可能不需要的字符)中删除不需要的\n
。最好将这些信息保存在keys.txt
文件中,并在将项目推送到keys.txt
时将.gitignore
文件的名称添加到GitHub
,以便其他人赢得&#39}。在将代码推送到GitHub
时,请破解您的帐户。
keys_file = open("keys.txt")
lines = keys_file.readlines()
consumer_key = lines[0].rstrip()
consumer_secret = lines[1].rstrip()
access_token = lines[2].rstrip()
access_token_secret = lines[3].rstrip()