简单词云制作流程

*词云制作
目的:爬取前100名大学并且制作词云
1.使用存储数据库为MongoDB数据库,创建代码如下:

class bug(object):
    clent=pymongo.MongoClient("Localhost",27017)
    zhongji=clent.zhongji    bug=zhongji["bug"]
    spider1=bug["spider1"]    
    infolist2=[]    
    infolist1=[]

2.获取数据:
数据地址:http://www.gaosan.com/gaokao/196075.html
使用request,Beautifulsoup方法爬取,代码如下:

def get_url(self):
    kv={"user-agent":"Moizlla/5.0"}
    url="http://www.gaosan.com/gaokao/196075.html"
    r=requests.get(url, headers=kv) 
    r.encoding='utf-8'  
    print(r.status_code)       
    print(r.encoding)        
    return r.text    
def anay_html(self,html):
    soup=BeautifulSoup(html,'html.parser')        
    passage=soup.find("body").find("div",attrs={"class":"content"}).find("div",attrs={"class":"c_left"}).find("tbody")        
    name_list=passage.find_all("tr")        
    for info in name_list:
        name=info.find_all("td")[1].string 
        grade=info.find_all("td")[2].getText()                      
        bug.infolist2.append(name)
        spider.insert_one(name)#添加数据到MongoDB
        

3.因数据比较干净,不必进行数据清洗,删除第一个元素‘学校名称’即可
并且使用worldcloud进行绘制,matplotlib 进行展示 代码如下:

 def show(self,text):        
     del text[0]        
     text=str(text)        
     wordCloud=WordCloud(font_path='simkai.ttf',background_color='white',width=2500,height=1200,font_step=1,margin=2).generate(text)        
     plt.imshow(wordCloud)        
     plt.axis='off'        
     plt.show()
   

4.总结
所用第三方库如下:

from bs4 import BeautifulSoup
import requests
import matplotlib.pyplot as plt 
import pymongo
from wordcloud import WordCloud, STOPWORDS

展示效果图如下:
数据库展示:
在这里插入图片描述
词云效果图:
在这里插入图片描述

爬取了前100所大学的名字,存储到MongoDB库中防止丢失,利用worldcloud,matplotlib 进行绘图和展示,虽然爬取的内容较少且简单,但是流程基本完整。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值