用python做词云
来源:互联网 发布:ant maven知乎 编辑:程序博客网 时间:2024/05/18 02:22
用Python抓取太原地区IT行业的需求,并做成词云
好了首先就是分析网页:
1、搜索并进入中华英才网(http://www.chinahr.com/taiyuan/jobs/57552/)。
2、右击打开检查因为要分析的是对什么人才的需求,所以我们只需要抓取工作名称就好了。
3、点击箭头指向的标号,并选中工作的名字就可以看到他在网页中的属性
接下来就是编码了
import requests from bs4 import BeautifulSoup from datetime import datetime import re import json import pandasjobs_total = []f = open('F:\\joblist.txt','a+',encoding='utf-8')print("............")url='http://www.chinahr.com/taiyuan/jobs/57552/' res=requests.get(url) res.encoding='utf-8' soup=BeautifulSoup(res.text,'html.parser') for i in range(0,20): jobName=soup.select('.e1 a')[i].text jobs_total.extend(jobName) f.write(" "+jobName) jobSalary=soup.select('.l2 .e2')[i].texthurl='http://www.chinahr.com/taiyuan/jobs/57552/{}'for i in range(2,99): nurl=hurl.format(i) res=requests.get(nurl) res.encoding='utf-8' soup=BeautifulSoup(res.text,'html.parser') for i in range(0,20): jobName=soup.select('.e1 a')[i].text f.write(" "+jobName) jobs_total.extend(jobName) jobSalary=soup.select('.l2 .e2')[i].textlen(jobs_total)print("............")df=pandas.DataFrame(jobs_total)f.close()
一页是20条数据,一共99页。上边的代码就是帮我们抓取的所有职位信息。
接下来我们就要生成词云了。
刚开始写出来是这样的
都显示的是一个大方框子
说明生成成功了,但是写这个的是一个老外,不会说中文。我们需要自己的中文字体,于是有了下边的代码;
#-*- coding: utf-8 -*-%pylab inlinefrom wordcloud import WordCloudfrom os import pathimport matplotlib.pyplot as pltf = open('F:\\joblist.txt','r',encoding='utf-8')jobsText=f.read()wordcloud = WordCloud(font_path="F:\\simfang.ttf").generate(jobsText)plt.imshow(wordcloud, interpolation='bilinear')plt.axis("off")好了这下子就得到了我们需要的东西
这就是生成的词云,从图片中看到的是太原地区IT行业竟然多数找的是销售,作为一个学软件的好心累。
应为要爬取1万8千条数据,慢是正常的,耐心等待。
阅读全文
1 0
- 用python做词云
- Python做词云
- 从零开始教你用 Python 做词云
- Python使用wordcloud做词云
- python做词云Wordcloud
- [Python]用Python实现Web自动测试
- pypy -- 用python实现的python
- hello python--用eclipse开发python
- 【Python】用Python实现一个俄罗斯方块游戏
- [Python] 用Python建立Web服务器
- 【原创】用 Python 反编译 Python 软件
- python--用 OpenMP 并行多核加速 Python!
- python pymssql freetds,用python访问sqlserver
- 用Python处理Cookie - Python开发技术文章
- #python#用python试了下递归
- 【Python】Python用ConfigParser管理配置文件
- AST 模块:用 Python 修改 Python 代码
- [Python--]用Python实现时间离散化
- ST17H26之att数据库设置
- 简介
- LINQ体验(5)——LINQ to SQL语句之Select/Distinct和Count/Sum/Min/Max/Avg
- Bug的严重程度(Blocker, Critical, Major, Minor/Trivial)和Bug修复优先级如何定义
- 【Windows】上帝模式(更详尽的更强大的控制面板)
- 用python做词云
- centos 6.8 + pgsql 9.6 + pg_hint_plan
- LINQ体验(6)——LINQ to SQL语句之Join和Order By
- linux文件及路径权限
- “FCoE全解系列”之关键特性和技术分析
- 从JDK源码看System.exit
- Maven error: Failed to execute goal on project : Could not resolve dependencies for project 解决办法
- 在window下安装深度学习环境遇到的坑
- 【第1080期】安息吧 REST API,GraphQL 长存