[英]Posting data to Sentiment140 for Sentiment Analysis
我的目标是对从Twitter收集的数据进行至少3种不同类型的情绪分析。
我正在尝试使用Python和Twitter API收集并存储在数据库(MySQL&PhpMyAdmin)中的推文上进行情感分析。 我遇到3个问题:
TypeError:POST数据应为字节,字节可迭代或文件对象。 它不能是str类型。
蟒蛇
import urllib.request
import json
url = 'http://www.sentiment140.com/api/bulkClassifyJson'
values = {'data': [{'text': 'I love Titanic.'}, {'text': 'I hate Titanic.'}]}
data = json.dumps(values) # instead of urllib.urlencode(values)
response = urllib.request.urlopen(url, data)
page = response.read()
所有帮助将不胜感激,谢谢!
如urllib docs中所述,您必须先将strs转换为字节,然后再将其提供给urlopen:
请注意,在将urlencode输出的参数作为数据发送到urlopen之前,已将其编码为字节。
您可以通过对data
调用.encode()
来实现:
import urllib.request
import json
url = 'http://www.sentiment140.com/api/bulkClassifyJson'
values = {'data': [{'text': 'I love Titanic.'}, {'text': 'I hate Titanic.'}]}
data = json.dumps(values)
response = urllib.request.urlopen(url, data=data.encode("utf-8"))
page = response.read()
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.