2016-07-11 48 views
1

我正在使用Python和Facebook-SDK收集来自Facebook页面的所有评论。保存使用Python从Facebook收集的评论的最佳方式是什么?

由于我想对这些评论进行情绪分析,保存这些文本的最佳方式是什么,这样就不需要对文本进行任何更改?

我现在将注释保存为表格,然后保存为CSV文件。

table.to_csv('file-name.csv') 

但是,如果我想读这个保存的文件,我得到以下错误:

UnicodeDecodeError: 'utf-8' codec can't decode byte 0xfc in position ... 

顺便说一句,我与德国文本工作。

+0

几个问题。 1)你想要存储多少数据? 2)你是否正在考虑实施某种数据库来存储它们? 3)是否有任何理由不应该只是使用csv文件,尽管看起来像是一个简单的修复错误? – SAMO

+0

感谢@NelsCarlson的快速回复。 1)目前,我不能完全说,因为想象一下,我想收集大概50页的所有信息,然后根据信息过滤我需要的信息,最后为每个选定信息的所有信息。 2)否,例如,对于注释,我定义了一个函数和一个空列表>> emptyList.append(..)。 3)不,对我来说,重要的是我不会失去任何东西,并且简单地检索用于进行情绪分析的文本。 – Vahid

+0

好吧,因为你存储的数据看起来很相关(你找到一篇文章,然后所有与帖子相关的消息),我会推荐一个JSON对象。它只会像CSV一样保存到您的计算机上,但结构可能会让事情变得更简单。像{'post_id':001''message':'hello'}可能会使预成形操作变得更简单。 – SAMO

回答

2

你试过吗?在你的代码的顶部

设置默认编码器

import sys 
reload(sys) 
sys.setdefaultencoding("ISO-8859-1") 

pd.read_csv('file-name.csv', encoding = "ISO-8859-1") 
+1

Thanks @Toussaint,我试过这种方式:pd.read_csv('file-name.csv',encoding =“ISO-8859-1”),现在一切正常! :) – Vahid

+1

@Vahid - 如果它有效,你能标记答案是正确的吗? –

0

如果您对数据进行编码知识的话,你可以简单地用熊猫来阅读你的CSV如下:

import pandas as pd 
pd.read_csv('filename.csv', encoding='encoding') 
+0

谢谢@Sijan,我知道一些关于编码的知识,但到目前为止,我总是遇到这个问题,请告诉我如何解决我的问题:)所以,我的意思是向我介绍一个已经解释过的源或博客更确切地说!顺便说一下,我正在与德国文本工作。 – Vahid

0

我要说这真的取决于许多不同的因素,如:

  • 的大小数据
  • 什么样的分析,具体来说,你是一个nticipating,你会做
  • 什么格式是你最舒服,我喜欢做的熊猫,如果可能的数据

对于大多数我的数据的改写(munging)在python工作,但有时这不是一个可行的给定数据大小的选项。在这种情况下,你必须考虑使用类似pyspark的东西。但是这里有一个熊猫文档的链接供参考,它们有很多读取各种数据的功能:pandas docs

相关问题