我是python中的首发。我想使用以下代码来使用python获取推文。
import urllib
import urllib2
import json
def getData(keyword):
url = 'http://search.twitter.com/search.json'
data = {'q': keyword, 'lang': 'en', 'result_type': 'recent'}
params = urllib.urlencode(data)
try:
req = urllib2.Request(url, params)
response = urllib2.urlopen(req)
jsonData = json.load(response)
tweets = []
for item in jsonData['results']:
tweets.append(item['text'])
return tweets
except urllib2.URLError, e:
self.handleError(e)
return tweets
tweets = getData("messi")
print tweets
但在运行后我得到以下错误。
Traceback (most recent call last):
File "E:\main project\python coding\sentisummarizer\twitter-reading\readingtest.py", line 23, in <module>
tweets = getData("messi");
File "E:\main project\python coding\sentisummarizer\twitter-reading\readingtest.py", line 19, in getData
self.handleError(e)
NameError: global name 'self' is not defined
我该如何更正此错误?
答案 0 :(得分:1)
您在模块级功能中使用self
。您只应在类实例方法中使用self
。
替换
self.handleError(e)
与
handleError(e)
然后您需要在模块中定义handleError
函数,例如:
def handleError(error):
print error