2016-07-11 46 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

相關問題