python爬虫——京东评论jieba分词wordcloud词云统计

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python爬虫——京东评论jieba分词wordcloud词云统计相关的知识,希望对你有一定的参考价值。

接上一章,抓取京东评论区内容。

url=‘https://club.jd.com/comment/productPageComments.action?callback=fetchJSON_comment98vv399&productId=4560435&score=0&sortType=5&page=0&pageSize=10&isShadowSku=0&fold=1’

重点是productId——产品id、page——页码、pageSize:指定每一页展示多少评论

#coding:utf-8
import requests
import json,time

def get_detail(url):
    wbdata = requests.get(url).text
    wbdata = wbdata[25:-2]

    data = json.loads(wbdata)
    news = data[comments]

    for n in news:
        title = n[content]    
        print title
        print -*20


        
for i in range(30):
    url = https://club.jd.com/comment/productPageComments.action?callback=fetchJSON_comment98vv399&productId=4560435&score=0&sortType=5&page= +str(i) +&pageSize=10&isShadowSku=0&fold=1
#url = ‘https://club.jd.com/comment/productPageComments.action?callback=fetchJSON_comment98vv399&productId=4560435&score=0&sortType=5&page=0&pageSize=10&isShadowSku=0&fold=1‘
    if requests.get(url).status_code == 200:
        get_detail(url)
        time.sleep(10)
        print i

代码类似,不详细说明(get、json、数据处理)。

加入time.sleep(10)防止ip被禁。

结果如下:

技术分享

 

 

 

----------------------------------------------------------

想比较直观的显示评论重点,因此加入jieba分词还有wordcloud词云(没有库的,通过pip install jieba)

 

import matplotlib.pyplot as plt
from wordcloud import WordCloud
import jieba,os


text_from_file_with_apath = open(sss.txt).read()
 
wordlist_after_jieba = jieba.cut(text_from_file_with_apath, cut_all = True)
wl_space_split = " ".join(wordlist_after_jieba)
 
my_wordcloud = WordCloud().generate(wl_space_split)
 
plt.imshow(my_wordcloud)
plt.axis("off")
plt.show()

简陋版词云效果。

技术分享

wordcloud 默认使用了DroidSansMono.ttf 字体库,改一下换成一个支持中文的ttf 字库, 重新运行一下这十行代码,就可以了。

wordcloud词云默认不支持中文,可能会显示还多矩形框。

解决办法——改一下换成一个支持中文的ttf 字库

Python27\\Lib\\site-packages\\wordcloud.py            中的 ----    DroidSansMono.ttf     替换修改为  simfang.ttf

 

在线词云生成网页:https://wordart.com/create

 

以上是关于python爬虫——京东评论jieba分词wordcloud词云统计的主要内容,如果未能解决你的问题,请参考以下文章

python基础===jieba模块,Python 中文分词组件

python笔记:jieba(中文分词)

python爬虫:抓取新浪新闻内容(从当前时间到之前某个时间段),并用jieba分词,用于训练自己的分词模型

Python进行jieba分词

Python之酒店评论分词词性标注TF-IDF词频统计词云

python词频统计