美文网首页学习
利用简书首页文章标题数据生成词云

利用简书首页文章标题数据生成词云

作者: 天善智能 | 来源:发表于2018-05-29 10:39 被阅读7次

欢迎关注天善智能,我们是专注于商业智能BI,人工智能AI,大数据分析与挖掘领域的垂直社区,学习,问答、求职一站式搞定!

对商业智能BI、大数据分析挖掘、机器学习,python,R等数据领域感兴趣的同学加微信:tsaiedu,并注明消息来源,邀请你进入数据爱好者交流群,数据爱好者们都在这儿。


1.词云图

词云图,也叫文字云,是对文本中出现频率较高的“关键词”予以视觉化的展现,词云图过滤掉大量的低频低质的文本信息,使得浏览者只要一眼扫过文本就可领略文本的主旨。

先看几个词云图

简书签约作者标签词云

全国政协常委会工作报告词云图

2.推荐几个不错的词云图工具

Tagul

Tagul云可以自定义字体、词云的形状(有爱心、BUS、雪人、人像、UFO等),颜色等,做出来的词云图很酷炫,为网站访问者提供良好的用户体验。用户可以在网站做好词云图,然后印在衣服、杯子、鼠标垫等地方,自己设计身边的物件,感觉很有成就感,很实用的网站。

图悦

这款国内的在线词频分析工具,在长文本自动分词并制作词云方面还是很出众的,而且也容易上手,还可以自定义定制图形模板:标准、微信、地图等,切换自如,用起来体验很不错。

BDP个人版

这是一款数据可视化工具,除了词云,还有很多其他酷炫的图表,如GIS地图、漏斗图、瀑布图、桑基图等,来了解它们的词云。工具很容易上手,直接把词语这个数据拉到维度栏,再选择词云就瞬间呈现词云图表,BDP会自动算好词频,你可以设置颜色,快速实现词云可视化,特别简单。

Python的扩展包wordcloud也可构建词云。

安装命令

#安装词云

pip install wordcloud

#安装jieba分词

pip install jieba

1、引入模块

from wordcloud import WordCloud

import matplotlib.pyplot as plt

2、实例化一个词云

wc = WordCloud()

3、导入文本

text = open(r"222.txt",encoding='utf-8').read()

4、生成词云

wc.generate(text)

5、显示词云

plt.imshow(wc)

#导入python画图的库,词云生成库和jieba的分词库

import matplotlib.pyplot as plt

from wordcloud import WordCloud

import jieba

#读取txt格式的文本内容

text_from_file_with_apath = open('JsIndex.txt').read()

#使用jieba进行分词,并对分词的结果以空格隔开

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)

#用pyplot展示词云图。

plt.imshow(my_wordcloud)

plt.axis("off")

plt.show()

入门可以参考博客python词云 wordcloud 入门,安装的时候建议使用依赖包安装,我用命令安装了几次一直超时失败。

3.爬取数据,制作词云图

1.爬取简书首页推荐文章标题

分析网页结构通过Xpath筛选我们想要的数据有两种方法

通过谷歌商店的Xpath工具分析结构得到我们想要的数据

直接复制title的xpath,不过我们只能得到这一条数据,所以还要修改

编写代码

#-*- coding:utf-8 -*-

#creater 简书-_知几 2017.8.26

import urllib,urllib2,re

from lxml import etree

class CrawlJs:

#定义函数,爬取对应的数据

def getArticle(self,url):

print '█████████████◣开始爬取数据'

my_headers = {

'User-Agent':'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.104 Safari/537.36',

}

request = urllib2.Request(url,headers=my_headers)

content = urllib2.urlopen(request).read()

return content

#定义函数,筛选和保存爬取到的数据

def save(self,content):

xml = etree.HTML(content)

datas = xml.xpath('//div[@class="content"]/a/text()')

print datas

for data in datas:

print data

with open('JsIndex.txt','a+') as f:

f.write(data.encode('utf-8')+ '\n')

print '█████████████◣爬取完成!'

#定义主程序接口

if __name__ == '__main__':

url = 'http://www.jianshu.com/'

js = CrawlJs()

content = js.getArticle(url)

js.save(content)

得到我们的数据

2.制作词云图

工具 我使用的是TAGUL 一款在线词云制作工具,简单易上手,缺点只能分词英文,需要导入中文字体。

操作:

Import words , 可以直接粘贴导入文本数据,或者以web url的方式导入。文本数据包括关键词和size。

选择形状shapes -- 也可自定义形状图片

TAGUL提供了一些模板图形,左边是分类主题。

分词技术

推荐两个分词工具,一个是在线分词工具 基于深度学习的中文在线抽词-PullWord,另一个是结巴分词(jieba)。

简书首页推荐文章标题词云图

文章来源:天善智能社区 https://ask.hellobi.com/publish/article/10188

作者:许胜利

相关文章

  • 利用简书首页文章标题数据生成词云

    欢迎关注天善智能,我们是专注于商业智能BI,人工智能AI,大数据分析与挖掘领域的垂直社区,学习,问答、求职一站式搞...

  • 利用简书首页文章标题数据生成词云

    1.词云图 词云图,也叫文字云,是对文本中出现频率较高的“关键词”予以视觉化的展现,词云图过滤掉大量的低频低质的文...

  • 利用Nodejs抓取网上图片并保存至本地

    1)初步应用 利用http以及fs模块抓取网络数据保存至本地 2)利用爬虫抓取简书首页的文章链接及内容以及图片保存...

  • 简书怎么了

    一直用简书来写文章,也会看简书首页别人写的文章,但是最近简书首页刷出来的文章实在是让人觉得很无语,标题都是耸人听闻...

  • Makedown语法记录

    自动生成目录 兼容性一般。 超链接 []中为标题,()中为url。运行结果:首页-简书 表格 运行结果: 标题 注...

  • 没有嚼劲的文章就是在浪费时间

    刚才浏览了一下简书首页的部分文章,发现很多文章都是标题党,文不达意,有劲吗? 首页资源那么稀缺,真不知道简书平台…...

  • 利用豆瓣短评数据生成词云

    在之前的文章中,我们获得了豆瓣爬取的短评内容,汇总到了一个文件中,但是,没有被利用起来的数据是没有意义的。 前文提...

  • 上首页的标准是神马?

    有许多简友抱怨说,简书首页文章质量不好,特别是标题党泛滥。 我自己的感受是,标题党,不是一直都很多吗? 以前,首页...

  • 标题

    最近上简书的时候,不知为啥,首页好多文章都是新人“互关”“互粉”之类的词或者标题,虽然不明觉厉,但觉得吧,终归不是...

  • 实战爬取简书网热评文章(基于lxml及多进程爬虫方法)

    目标 爬取简书网“首页投稿”热评文章的信息,包括用户ID(author)、文章标题(title)、文章内容(con...

网友评论

    本文标题:利用简书首页文章标题数据生成词云

    本文链接:https://www.haomeiwen.com/subject/ljpojftx.html