词云显示智联最受欢迎的职位

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介:

 在上一篇博客里面。我们已经把智联的招聘信息存入到数据库(mysql)里面。 

接下来我们就需要对里面需要的信息进入 筛选和显示。

直接上代码:

import jieba

import matplotlib.pyplot as plt  

import jieba


from wordcloud import WordCloud  

import pymysql

import urllib

import bs4

from urllib import request

from bs4 import BeautifulSoup as bs


#数据库定义

class selectMysql(object):

def select_data(self):

list1=[]

#创建数据库链接

conn =pymysql.connect(host="127.0.0.1",port=3306,user="root",passwd="zfno11",db="job",charset='utf8')

        #创建游标

sql = 'select jobname from job '

cursor = conn.cursor()

try:

cursor.execute(sql)

#提交,不然无法保存新建或者修改的数据

except MySQLdb.Error: 

 print("数据库执行语句异常")

finally:

alldata = cursor.fetchall()

conn.commit()

#关闭游标

cursor.close()

conn.close()

for i in alldata:

list1.append(i)

return(list1)

#返回获取到的字符串结果

def get_result(self,list1):

self.list1=list1

with open("shuju",'w') as f:

for i in self.list1:

b= str(i).replace("(","").replace(")","").replace("-","").replace(",","").replace(" ","").replace("("," ").replace(")"," ").replace("'","")

f.write(b +'\n')

f.close()


# 创建停用词list  

def stopwordslist(filepath):  

stopwords = [line.strip() for line in open(filepath, 'r', encoding='utf-8').readlines()]  

return stopwords  

#去掉空格

  

  

# 对句子进行分词  

def seg_sentence(sentence):  

sentence_seged = jieba.cut(sentence.strip())  

stopwords = stopwordslist('stopwords.txt')  # 这里加载停用词的路径  

outstr1 = ''

outstr = ''  

for word in sentence_seged:  

if word not in stopwords:  

if word != '\t':  

outstr += word  

outstr1 += " "

#去重

for i in outstr1:

if i not in outstr1:

outstr.append(i)

return outstr  

  


inputs = open('shuju', 'r', encoding='utf-8')  

outputs = open('output.txt', 'w')  

for line in inputs:  

line_seg = seg_sentence(line)  # 这里的返回值是字符串  

outputs.write(line_seg + '\n')  

outputs.close()  

inputs.close()  

###以上部分完成了从数据库读取jobname然后存入到文本shuju里面,最后对文本进入简单的处理


class ciyun(object):

def __init__(self):

pass

def ciyundis(self):

text = open("output.txt",'rb').read()

wordlist =  jieba.cut(text,cut_all=True)

w1= " ".join(wordlist)

# print(w1)

#词云

backgroud_Image=plt.imread('timg.jpg')

wc =  WordCloud(background_color = "black", #设置背景颜色  

mask = backgroud_Image,  #设置背景图片  

max_words = 50, #设置最大显示的字数  

#stopwords = "", #设置停用词  

font_path = "/usr/share/fonts/simfang.ttf",  

#设置中文字体,使得词云可以显示(词云默认字体是“DroidSansMono.ttf字体库”,不支持中文)  

max_font_size = 150,  #设置字体最大值  

random_state = 30, #设置有多少种随机生成状态,即有多少种配色方案  

)  

myword = wc.generate(w1)   #生成词云 


plt.imshow(myword)

plt.axis("off")

plt.savefig('pink.png', dpi=700) #700是像素,像素越高,放大越清楚

plt.show()


#data= selectMysql()

#EEE=data.select_data()

#data.get_result(EEE)


ciyun1=ciyun()

ciyun1.ciyundis()


执行结果截图:

ec8ac2ddf55d97849daca6ebbdf29148.png




本文转自 zfno11 51CTO博客,原文链接:http://blog.51cto.com/zfno111/1983434
相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
机器学习/深度学习 算法 数据挖掘
阿里音乐流行趋势预测—冠军答辩(一)|学习笔记
快速学习阿里音乐流行趋势预测—冠军答辩(一)
622 0
|
数据采集 机器学习/深度学习 算法
阿里音乐流行趋势预测—冠军答辩(二)|学习笔记
快速学习阿里音乐流行趋势预测—冠军答辩(二)
377 0
|
9月前
|
JSON 数据可视化 前端开发
百度Echarts消防训练成绩大数据可视化综合分析系统开发实录(1)饼图表格互动篇
百度Echarts消防训练成绩大数据可视化综合分析系统开发实录(1)饼图表格互动篇
51 0
百度Echarts消防训练成绩大数据可视化综合分析系统开发实录(1)饼图表格互动篇
|
数据采集 SQL 算法
阿里音乐流行趋势预测—亚军答辩(一)|学习笔记
快速学习阿里音乐流行趋势预测—亚军答辩(一)
342 0
|
机器学习/深度学习 人工智能 编解码
中国风?古典系?AI中文绘图创作尝鲜!⛵
本文对百度开源的中文 AI 图像生成器 ERNIE 进行讲解,包括工具简介、通过Demo页面和API两种使用方式,以及使用中文提示词生成的图像效果。
395 0
中国风?古典系?AI中文绘图创作尝鲜!⛵
|
存储 数据可视化 数据安全/隐私保护
市场分析可视化案例2:市场分析关键词| 学习笔记
快速学习市场分析可视化案例2:市场分析关键词。
90 0
市场分析可视化案例2:市场分析关键词| 学习笔记
|
算法 大数据 开发者
阿里音乐流行趋势预测—亚军答辩(二)|学习笔记
快速学习阿里音乐流行趋势预测—亚军答辩(二)
203 0
|
人工智能 数据可视化 安全
用了它,你不再羡慕别人家的数据可视化效果多好看
数据可视化是数据领域一个重要的分支,目的是“让数据说话”,展现数据之美。好的图表会说话,好的图表可以抓住用户的心。 研究发现:人脑处理图片信息是同步进行的,而处理文字信息则是一步一步循序渐进的,而且一篇文字下来,大部分人只记住了其中的20%;人在看报纸时,99%的文字信息会自动被过滤掉,脑子里只残留了可怜的1%;人脑处理图片的速度是处理文字的6000倍。 也就是说,一篇6000字的文章需要10分钟看完,而压缩成一张图片则只需要10/6000分钟的时间。 当我们看到下面这张图的时候,我们第一时间是什么反应:
用了它,你不再羡慕别人家的数据可视化效果多好看
|
人工智能 运维 算法
算法博士平均月入4万,数据可视化技能全球吃香 | 2020年《顶级数据团队建设全景报告》重磅发布
算法博士平均月入4万,数据可视化技能全球吃香 | 2020年《顶级数据团队建设全景报告》重磅发布
139 0
|
SQL 数据采集 JSON
天池大数据竞赛 Spaceack带你利用Pandas,趋势图与桑基图分析美国选民候选人喜好度
竞赛地址: https://tianchi.aliyun.com/competition/entrance/531837/introduction 首先,这是一篇面向新人的教程导向的分析文章,(by the way其实我也是新手,从比赛开始才学的Pandas库,这也是我的一篇学习笔记),所以会包含很多函数的基础用法,解题思路等等, 流程会比较详细。 其次,本文在官方教程基础上会加入创新内容,但是绝不会为了用而用某种新方法,一定本着分析数据有所帮助的原则和对数据敬畏的态度来做。
393 0
天池大数据竞赛 Spaceack带你利用Pandas,趋势图与桑基图分析美国选民候选人喜好度