光是数据不展示粗来,怎么能一目了然呢?因此今天以百度“AI”这个关键词为例子,搜集搜索结果相关网站中的网页内容,用matplotlib+wordcloud实现生成词云图。
我们首先瞧一瞧百度搜索“AI”的是什么,https://www.baidu.com/s?wd=AI,结果发现基本由Artificial Intelligence人工智能的AI、Adobe Illustrator绘图工具的AI、“爱”的拼音等其他信息构成。其中除了人工智能方面以外的信息都是需要剔除的。
因此我们主要的思路是:采集数据→筛选→统计词频→生成词云图。

前期准备

下载好 urllib、BeautifulSoup、re正则表达式、matplotlib绘图、jieba分词、wordcloud词云、PIL、numpy数据处理这几个库并引用。

初写大纲

先来写个大纲版的,只有采集数据→词云图这两个简单的步骤。

数据采集部分:
需要进入到百度搜索出的结果里,爬取其中包含AI的页面内容。

from urllib import request
import urllib.parse
from bs4 import BeautifulSoup
import re
import random
import datetimedef getLinks(url):html = request.urlopen(url)bsObj = BeautifulSoup(html, "html.parser")return bsObj.find("div",{"id":"bodyContent"}).findAll("a",{"href":re.compile("^(/wiki/)((?!:).)*$")}) #findAll结果是列表ResultSet#我们发现class="result-op c-container"和class="HMCpkB"等均是百度相关、广告等内容,因此剔除random.seed(datetime.datetime.now())
url = "https://www.baidu.com/s?wd=AI"
linkList = getLinks(url)
while len(linkList)>0:nextLink=linkList[random.randint(0,len(linkList)-1)].attrs['href']  #href属性值只有后半段链接print(nextLink)          linkList=getLinks(nextLink)

当我们手中有了数据信息的txt文档后,便可以进行简单的词云图绘制。
绘图部分:

import matplotlib.pyplot as plt
import jieba
from wordcloud import WordCloud , ImageColorGenerator
from PIL import Image
import numpy as nptxt=open(r'C:\Users\AER\Desktop\text.txt',"r",encoding="utf-8").read()cut_text=jieba.cut(txt,cut_all=False)
result='/'.join(cut_text)img=Image.open(r'C:\Users\AER\Desktop\PICPIC.png')
graph=np.array(Image)wc=WordCloud(font_path=r"C:\Users\AER\testgit\Study-Notes\msyh.ttc",background_color='white', max_font_size=50, mask=graph)     #
wc.generate(result)image_color=ImageColorGenerator(graph)
wc.recolor(color_func=image_color)
wc.to_file(r"C:\Users\AER\testgit\Study-Notes\5gpic.png")plt.figure("词云图")
plt.imshow(wc)
plt.axis("off")
plt.show()

数据处理

搜集百度关键词的相关网站、生成词云相关推荐

  1. python生成QQ机器人爬取百度文库链接推送好友并生成词云

    QQ机器人爬取百度文库链接推送好友并生成词云 一.环境准备 二.实现QQ机器人 1.QQ机器人介绍 2.安装方法 3.实现自己的QQ机器人 三.百度文库内容链接爬取推送好友 代码实现: 思路分析 1. ...

  2. 搭建在线生成词云网站

    使用python + Vue搭建词云网站 界面预览 使用界面 效果图 python代码 import numpy as npy import jieba from flask_cors import ...

  3. python词云改颜色_一种用Python生成词云

    一种用Python生成词云 我们在阅读一篇很长的文章时,总先看看文章的关键词来获知文章的大概内容.今天我们就来制作一个词云程序,将文章中出现次数较多的词语提取出来,生成一张词云图. 词云图的生成原理: ...

  4. python爬取豆瓣影评生成词云的课程设计报告_简单爬取《小丑》电影豆瓣短评生成词云...

    导语 在前段时间看了杰昆菲尼克斯的小丑电影,心里很好奇大部分观众看完这部电影之后对此有什么评价,然后看了看豆瓣短评之后,觉得通过python把短评中出现最多的单词提取出来,做成一张词云,看看这部电影给 ...

  5. 推荐一个免费的生成词云(word cloud)的在线工具

    "词云"这个概念由美国西北大学新闻学副教授.新媒体专业主任里奇·戈登(Rich Gordon)提出. "词云"就是对网络文本中出现频率较高的"关键词& ...

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

    原标题:利用简书首页文章标题数据生成词云 感谢关注天善智能,走好数据之路↑↑↑ 欢迎关注天善智能,我们是专注于商业智能BI,人工智能AI,大数据分析与挖掘领域的垂直社区,学习,问答.求职一站式搞定! ...

  7. 网络爬虫爬取b站励志弹幕并生成词云(精心笔记总结)

    bilibili献给新一代的演讲<后浪> 前言 在进入本文之前,我很想给大家推荐b站这个视频,3080.2万播放,27.9万条弹幕.这个视频之火不是因为漂亮的小姐姐,也不是什么很傻,很逗人 ...

  8. [弹幕词云姬]硬核b站up主一周撸出来的小工具,根据b站弹幕生成词云(一)

    过去一周突然有个很不错的想法,想用b站的弹幕来生成一个词云的效果.于是辛苦奋战一周,大概花了十个小时左右,整出了这个全新的小工具--<词云弹幕姬>访问地址http://danmu.xiez ...

  9. Python 爬取B站视频信息 弹幕信息 生成词云统计

    本文介绍功能:实现爬取B站视频信息(用户输入关键词).爬取弹幕信息(支持自定义天数).生成词云图 完整代码地址:https://github.com/736755244/py_bilibili 一.数 ...

  10. 网络爬虫爬取b站励志弹幕并生成词云(精心笔记总结)!

    bilibili献给新一代的演讲<后浪> 此文转载文,著作权归作者所有,如有侵权联系小编删除! 前言 在进入本文之前,我很想给大家推荐b站这个视频,3080.2万播放,27.9万条弹幕.这 ...

最新文章

  1. Python3 使用replace 替换空格无效
  2. 关于数据表中插入数据报错(pymysql.err.IntegrityError) (1062, “Duplicate entry ‘0112‘ for key ‘‘teacher.PRIMARY‘“)
  3. 影响Python运行效率的因素有哪些?
  4. Unity3d疑难问题解决
  5. 兼容Tomcat和Weblogic的Spring 数据源JNDI配置
  6. 手把手教你玩转网络编程模型之完成例程(Completion Routine)
  7. Linux计划任务Crontab介绍
  8. TCP/IP数据包结构分解
  9. php审计学习:xdcms2.0.8注入
  10. 国产操作系统发展离不开人才和市场
  11. 【Linux】指令之用到什么学什么
  12. 服务器显示器指示灯不亮,电脑显示器指示灯不亮怎么办
  13. 技术可行性分析和经济可行性分析
  14. UML-包图中包与包之间的关系
  15. 《Java并发编程的艺术》作者方腾飞:感谢Java,带我一路前行!
  16. 中金支付APP跳转支付对接
  17. MySql创建Table的时候将编码设置为utf-8
  18. BADI 构建方法(NEW BADI 实施)
  19. 计算机网络ping作用是什么,ping
  20. 求最大值的c语言程序,c语言如何求最大值

热门文章

  1. Mac如何用鼠标快速锁屏
  2. 台式计算机睡眠快捷键,电脑如何设置快捷方式迅速进入睡眠的状态?
  3. 北京上海开车遇加塞,像个人行不行?!
  4. python数据分析房价预测_Kaggle入门级赛题:房价预测——数据分析篇
  5. iOS 禁止横屏的解决方案
  6. 计算机不显示固态硬盘,电脑重启后读不到固态硬盘怎么办
  7. OpenWrt旁路由设置教程
  8. android ui设计灵感,26款高品质 APP UI原型设计灵感
  9. 1024程序员节|从无数bug中磨炼出的光,格外耀眼!
  10. con和com开头单词规律_con和com的前缀区别。背单词时总是搞不清什么时候是con什么时候是com之后找到了不同之处,c...