从招聘网站招聘者的角度上,分析程序员工作能力的需求,利用python的requests,BeautifulSoup4和正则来爬取深圳58同城程序员的招聘信息,数据分析则以云词图展示,主要用jieba、worldcloud,pandas这几个包来生成云词图。
一、数据爬取分成四部分:
整理好网站的头部信息,保证请求时,可以正常获取网页信息
获得二级网址的网址列表,此处是对一级网址进行解析,寻找一级网址里面包含的各个招聘信息并生成对应的网址列表
对二级网址中的指定标签进行爬取
建立csv文件
二、云词图生成分成四部分:
创建文件和停用词组,以便后面的停用词判断
词频统计,用pandans进行统计
设置云词属性
生成词云
数据爬取
第一部分,获取头部信息,对于大多数网页,若想用requests这个包爬取其中的信息,在请求时务必加网页头部信息和关闭重定向!!获取头部信息这里给出两种办法,第一种是直接从网页代码获取,让头部信息变成字典样式
def headers_information(h):
lst=headers.split('\n')
m=[]
for i in lst:
key=i.split(':')[0]
value=i.split(':')[1]
m.append([str(key),value])
return(dict(m))
print(headers_information(headers))
第二种直接添加
h={"User-Agent" : "User-Agent:Mozilla/5.0(compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0;"},
r=requests.get(url, allow_redirects=False,headers=h)
第二部分,获得二级网址的