Python 将数据发布到情绪140以进行情绪分析

Python 将数据发布到情绪140以进行情绪分析,python,mysql,twitter,sentiment-analysis,naivebayes,Python,Mysql,Twitter,Sentiment Analysis,Naivebayes,我的目标是对从twitter收集的数据进行至少3种不同类型的情绪分析 我正在尝试对我使用Python和Twitter API收集并存储在数据库(MySQL和PhpMyAdmin)中的tweet进行情绪分析。我有三个问题: 执行情绪分析的API不多(任何建议都会有帮助) 我试图连接到API,但我的代码返回以下错误 TypeError:POST数据应为字节、字节的iterable或文件对象。它不能是str类型 是否有一种通用的方法将感伤140 API(或任何其他感伤分析API)与my MySQL数据

我的目标是对从twitter收集的数据进行至少3种不同类型的情绪分析

我正在尝试对我使用Python和Twitter API收集并存储在数据库(MySQL和PhpMyAdmin)中的tweet进行情绪分析。我有三个问题:

  • 执行情绪分析的API不多(任何建议都会有帮助)
  • 我试图连接到API,但我的代码返回以下错误
  • TypeError:POST数据应为字节、字节的iterable或文件对象。它不能是str类型

  • 是否有一种通用的方法将感伤140 API(或任何其他感伤分析API)与my MySQL数据库连接起来,以分析数据库中的文本列
  • Python

    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()
    
    非常感谢您的帮助,谢谢

    如中所述,在将str馈送到urlopen之前,必须将str转换为字节:

    请注意,urlencode的参数输出在作为数据发送到urlopen之前已编码为字节

    您可以通过调用
    数据上的
    .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()
    
    如中所述,在将STR馈送到urlopen之前,必须将其转换为字节:

    请注意,urlencode的参数输出在作为数据发送到urlopen之前已编码为字节

    您可以通过调用
    数据上的
    .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()
    

    请告诉我您正在使用的
    python
    的版本。2或3?我正在使用python 3请告诉我您正在使用的
    python
    的版本。2还是3?我用的是python 3