一、系统环境:
Windows 7+Python3.4+MongoDB
二、爬取过程:
(1)获取大学本科所有专业名称
# 获取大学本科专业名称
def get_name():
url = 'http://yx.liexue.cn/zy/'
wbdata = requests.get(url,headers=header).content
soup = BeautifulSoup(wbdata,'html.parser')
name = soup.select("dd.but > a")
name_list = []
for n in name:
# print(n.text)
name_list.append(n.text)
# print(soup)
print(name_list)
# print(len(name_list))
return name_list
(2)以专业名称作为搜索关键词获取职位信息的数量
url = 'http://sou.zhaopin.com/jobs/searchresult.ashx?jl={0}&kw={1}&sm=0'.format("全国",keywords)
wbdata = requests.get(url,headers=header).content
soup = BeautifulSoup(wbdata,'lxml')
job_count = re.findall(r"共<em>(.*?)</em>个职位满足条件",str(soup))[0]
pages = (int(job_count)//60)+1
(3)获取职位信息
jobs_url = 'http://sou.zhaopin.com/jobs/searchresult.ashx?jl={0}&kw={1}&sm=0&p={2}'.format("全国",keywords,page)
job_name = soup.select("table.newlist > tr > td.zwmc > div > a")
# company_name = soup.select("table.newlist > tr > td.gsmc > a")
salarys = soup.select("table.newlist > tr > td.zwyx")
locations = soup.select("table.newlist > tr > td.gzdd")
times = soup.select("table.newlist > tr > td.gxsj > span")
for name,salary,location,time in zip(job_name,salarys,locations,times):
data = {
'name':name.get_text(),
'salary':salary.get_text(),
'location':location.get_text(),
'time':time.get_text(),
'cate_name':keywords
}
print(keywords,data,page)
jobs_info.insert_one(data)
print("插入1条数据完成")
(4)使用多进程执行程序
if __name__ == '__main__':
pool = Pool(processes=4)
pool.map_async(get_name_job_info,get_name())
pool.close()
pool.join()
最后,抓取了100多万条智联招聘上的职位信息,使用了多进程和多线程,耗时很快;
需要完整代码的,可以关注微信公众号:州的先生,留言获取
部分数据如下:
cate_name
location
name
salary
time
0
侦查学
郑州
法务监察
6000-10000
12-15
1
侦查学
武汉
监察经理(003439)
10000-20000
12-15
2
侦查学
南京
监察经理(003439)
10000-20000
12-15
3
侦查学
徐州
监察经理(003439)
10000-20000
12-15
4
侦查学
沈阳
监察经理(003439)
10000-20000
12-15
5
侦查学
重庆
监察经理(003439)
10000-20000
12-15
6
侦查学
广州
监察经理(003439)
10000-20000
12-15
7
侦查学
北京
内侦总经理
50000元以上
12-06
8
哲学
广州 – 海珠区
招生老师/课程顾问(中山大学管理哲学班)
8001-10000
12-16
9
哲学
广州 – 海珠区
招生老师/课程顾问(中山大学管理哲学班)
8001-10000
12-16
10
哲学
苏州
【同声传译.高级口译讲师(人文哲学社会科学方向)】
10000-20000
12-16
11
哲学
苏州
【同声传译.高级口译讲师(人文哲学社会科学方向)】
10000-20000
12-16
12
哲学
济南
招教专职教师(教育学、心理学、法律、历史、哲学)
8001-10000
12-16
13
哲学
北京
哲学图书编辑
6001-8000
12-16
14
哲学
苏州
美吉姆(苏州总部)教育咨询顾问(课程销售) EC
10000-20000
12-16
15
哲学
哈尔滨
组织干事岗位
6001-8000
12-16
16
哲学
济南
招教专职教师(教育学、心理学、法律、历史、哲学)
8001-10000
12-16
17
哲学
北京
文案策划
10001-15000
12-16
18
哲学
广州 – 海珠区
招生老师/课程顾问(中山大学管理哲学班)
8001-10000
12-16
19
哲学
宁波
华孚进出口-资深外贸业务员
5000-8000
12-16
20
哲学
北京
哲学图书编辑
6001-8000
12-16
21
哲学
北京 – 丰台区
研究室科员
5400-6700
12-16
22
哲学
深圳 – 宝安区
外贸业务
4001-6000
12-16
23
哲学
广州 – 白云区
外贸业务员
6001-8000
12-16
24
哲学
苏州
美吉姆(苏州总部)教育咨询顾问(课程销售) EC
10000-20000
12-16
25
哲学
广州 – 海珠区
招生老师/课程顾问(中山大学管理哲学班)
8001-10000
12-16
26
哲学
上海
公共课专职教师(近代史、马概、政经)
8001-10000
12-16
27
哲学
哈尔滨
组织干事岗位
6001-8000
12-16
28
哲学
北京
创新院创新环境研究所面向海内外公开招收博士后研究人员的公告
10001-15000
12-16
29
哲学
苏州
【同声传译.高级口译讲师(人文哲学社会科学方向)】
10000-20000
12-16
…
…
…
…
…
…
1074668
服装与服饰设计
长春
副高以上职称教师(离退教授、副教授)——(工作地:山西晋中)
8001-10000
11-28
1074669
服装与服饰设计
广州
副高以上职称教师(离退教授、副教授)——(工作地:山西晋中)
8001-10000
11-28
1074670
服装与服饰设计
沈阳
副高以上职称教师(离退教授、副教授)——(工作地:山西晋中)
8001-10000
11-28
1074671
服装与服饰设计
太原
副高以上职称教师(离退教授、副教授)——(工作地:山西晋中)
8001-10000
11-28
1074672
服装与服饰设计
北京
副高以上职称教师(离退教授、副教授)——(工作地:山西晋中)
8001-10000
11-28
1074673
服装与服饰设计
绵阳
大学专任教师
4001-6000
11-24
1074674
服装与服饰设计
福州
影视系及美术与设计系专任教师
6000-12000
11-24
1074675
服装与服饰设计
北京
服装设计师(服饰事业部生产技术部)
4001-6000
12-15
1074676
服装与服饰设计
北京
服装助理 服装设计师 服装搭配师
4001-6000
12-13
1074677
服装与服饰设计
北京
服装助理 服装设计师 服装搭配师
4001-6000
12-13
1074678
服装与服饰设计
北京
服装助理 服装设计师 服装搭配师
4001-6000
12-13
1074679
服装与服饰设计
北京
服装助理 服装设计师 服装搭配师
4001-6000
12-13
1074680
服装与服饰设计
北京
服装助理 服装设计师 服装搭配师
4001-6000
12-13
1074681
服装与服饰设计
北京
服装助理 服装设计师 服装搭配师
4001-6000
12-13
1074682
服装与服饰设计
北京
服装助理 服装设计师 服装搭配师
4001-6000
12-13
1074683
服装与服饰设计
北京
服装助理 服装设计师 服装搭配师
4001-6000
12-13
1074684
服装与服饰设计
北京
服装助理 服装设计师 服装搭配师
4001-6000
12-13
1074685
服装与服饰设计
北京
服装助理 服装设计师 服装搭配师
4001-6000
12-13
1074686
服装与服饰设计
北京
服装助理 服装设计师 服装搭配师
4001-6000
12-13
1074687
服装与服饰设计
北京
服装助理 服装设计师 服装搭配师
4001-6000
12-13
1074688
服装与服饰设计
北京
服装助理 服装设计师 服装搭配师
4001-6000
12-13
1074689
艺术史论
郑州
艺术基金运营总监
6001-8000
12-16
1074690
艺术史论
北京
艺术品实习生
2001-4000
12-16
1074691
艺术史论
杭州 – 上城区
展厅管理员
4001-6000
12-15
1074692
艺术史论
沈阳 – 大东区
美术教师
4001-6000
12-15
1074693
艺术史论
广州
美术专业教师
4001-6000
12-15
1074694
艺术史论
沈阳 – 大东区
美术老师
2001-4000
12-14
1074695
艺术史论
沈阳
少儿美术老师
2001-4000
12-12
1074696
艺术史论
沈阳
美术教师
2001-4000
12-12
1074697
艺术史论
武汉
艺术史论教师
3000-5000
12-09
1074698 rows × 5 columns
分享到: