Python數據分析之貼吧的問與答
上次爬蟲小分隊爬取了貼吧中python問題的精品回答,我自己也用scrapy寫了一個程序,爬取了一點信息,存入MongoDB資料庫中,代碼就不上了,今天主要是通過pandas庫讀取數據,做問與答的文字雲。
讀取資料庫
pandas庫讀取文件很方便,主要是運用dataframe,首先導入需要的模塊;
import pandas as pdnimport pymongonimport jieba.analysen
然後連接資料庫,讀取數據;
client = pymongo.MongoClient(localhost,port = 27017)ntest = client[test]ntieba = test[tieba]ndata = pd.DataFrame(list(tieba.find()))ndatan
獲取question列
我們知道分詞需要的是字元串格式的數據,所以需要通過dataframe的切片提取question這列的數據,並轉化為字元串格式。
question_data = #初始化字元串nfor i in range(563): #數字為數據的行數n index = data.ix[i,:] #取每行n question = index[question] #取每行的questionn question_data = question_data + questionnprint(question_data)n
分詞
這部分以前講過,貼上代碼。
jieba.analyse.set_stop_words(停用詞表路徑)ntags = jieba.analyse.extract_tags(question_data, topK=50, withWeight=True)nfor item in tags:n print(item[0]+t+str(int(item[1]*1000)))n
詞雲
類似,也可以做出回答的詞雲。
問:答:
作者:羅羅攀 Python愛好者社區專欄作者,請勿轉載,謝謝。
簡書主頁:羅羅攀 - 簡書博客專欄:羅羅攀的博客配套視頻教程:Python3爬蟲三大案例實戰分享:貓眼電影、今日頭條街拍美圖、淘寶美食 Python3爬蟲三大案例實戰分享公眾號:Python愛好者社區(微信ID:python_shequ),關注,查看更多連載內容。
推薦閱讀:
※Python數據分析模塊 | pandas做數據分析(一):基本數據對象
※基於python的scrapy爬蟲,關於增量爬取是怎麼處理的?