前言
有温度 有深度 有广度 就等你来关注哦~
所有文章完整的素材+源码都在👇👇
哈喽!我是栗子同学,今天继续更新——聊一聊找工作的那些事儿~
PS——小故事
小姐姐”目前在长沙的一家物业管理公司做客服,月薪也才3-4千,之前出来一起聚餐的时候跟
我吐槽,说她前段时间刚辞职了,所以问问我年底找工作是不是比较难呀?
其实与此类似的问题常年有人问,“年初好找工作吗?”“1月份好找工作吗?”“2月份好找工作
吗?”一直问到“12月份好找工作吗?”“年底好找工作吗?”......
今天,小编就来用代码给大家统一解答下啦——扒一扒大型招聘网站“”某程无忧“”了解下大企业
招聘人才需求吧~
正文
“某程无忧”(NASDAQ: JOBS)是中国具有广泛影响力的人力资源服务供应商,在美国上市的中国人力资源服务企业。它运用了网络媒体及先进的移动端信息技术,加上经验丰富的专业顾问队伍,提供包括招聘猎头、培训测评和人事外包在内的全方位专业人力资源服务,现在全国25个城市设有服务机构,是国内领先的专业人力资源服务机构。
一、运行环境
1)Python环境
环境: Python 3 、Pycharm、requests 。 其他内置模块(不需要安装 re json csv),安装 好
python环境就可以了。 (win + R 输入cmd 输入安装命令 pip install 模块名 (如果你觉得安
装速度比较慢, 你可以切 换国内镜像源))
2)第三方库的安装:
pip install + 模块名 或者 带镜像源 pip install -i https://pypi.douban.com/simple/ +模块名
二、代码实现
1)代码思路
1. 数据来源分析 只有当我们知道, 我们想采集数据在什么地方
分析数据来源: 1. 通过浏览器自带工具 --> 开发者工具进行抓包分析 - F12 或者 鼠标右键点击检查选择network - 刷新网页内容 让本网页数据内容, 重新加载一遍 。
2. 分析我们想要的数据内容在什么地方? - 开发者工具: 搜索功能 可以搜索我们想要的数据内容,在哪个数据包里面 。
2.代码实现步骤
1. 发送请求, 模拟浏览器对于url地址发送请求
2. 获取数据, 获取服务器返回响应数据 开发者工具里面所看到 response 显示内容
3. 解析数据, 提取我们想要的数据内容 招聘岗位基本信息
4. 保存数据, 把数据信息保存表格里面
2)主程序
# 数据请求模块
import requests
# 导入正则表达式模块
import re
# 导入json
import json
# 导入格式化输出模块
from pprint import pprint
# 导入csv模块
import csv
# 创建文件
f = open('data.csv', mode='a', encoding='utf-8', newline='')
csv_writer = csv.DictWriter(f, fieldnames=[
'职位',
'公司',
'城市',
'经验',
'学历',
'薪资',
'福利',
'公司领域',
'公司规模',
'公司性质',
'发布日期',
'公司详情页',
'职位详情页',
])
csv_writer.writeheader()
"""
1. 发送请求, 模拟浏览器对于url地址发送请求
- 需要模块
- 模拟浏览器, 是用什么伪装模拟的
请求头
- 批量替换方法:
1. 选择替换内容, ctrl + R
2. 点击 .*
3. 输入正则命令 进行替换
(.*?): (.*)
'$1': '$2',
"""
# 确定请求url地址
url = 'https://search.51job.com/list/010000%252C020000%252C030200%252C040000%252C090200,000000,0000,00,9,99,python,2,1.html?u_atoken=0ebd3b84-8a7e-4598-8442-28333687bb0e&u_asession=01LE1DKlBRig-pCserJvEKtcD8FRdkDmxSC9vHIlu9RgicRu619dwho-tcQMpJEh-ZX0KNBwm7Lovlpxjd_P_q4JsKWYrT3W_NKPr8w6oU7K8losFOpWBCXw72NVjjGbeyUe3R9QHfzEvknA4dzJmVTGBkFo3NEHBv0PZUm6pbxQU&u_asig=0509LTGV1DvXMS_d8cXU0jv3xyAuxRHtUv_3iTMcaock6sXe4lMoRzoeNU0-4WRPy8d9VLjYwSYoqZRfrHRzYjSRtEXt_gJnMbngMyKwkcQvy_U3ZscBbWiqZINhCZ6eYI4iBYZ8_0uvXSgelx2P_AmiQIPqS5RvD76Ykjv1qCZTv9JS7q8ZD7Xtz2Ly-b0kmuyAKRFSVJkkdwVUnyHAIJzQlgrzuxIWQIo0fiMVZCpCacmYM5qL-ed1eR5R0F9DTnH_8T8uYGNepqxdb-gLe1IO3h9VXwMyh6PgyDIVSG1W_B5D3kdbrqcgu5uUHKicA6yeddtsgrM7GqljNTK8OvHqzgiKs0HrpHBlhQgs6dylHgSSI0vZrxvglZJr9CZiMwmWspDxyAEEo4kbsryBKb9Q&u_aref=T%2BGBzeflb1FpnfpkX4KDw6w05pw%3D'
# 伪装模拟 headers 字典数据类型
headers = {
# User-Agent 用户代理 浏览器基本身份信息
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.0.0 Safari/537.36',
}
# 发送请求
# 调用requests模块里面get请求方法, 对于url地址发送请求, 并且携带上headers请求头伪装, 最后用自定义变量名response接收返回数据
response = requests.get(url=url, headers=headers)
"""
2. 获取数据, 获取服务器返回响应数据
开发者工具里面所看到 response 显示内容
3. 解析数据, 提取我们想要的数据内容
招聘岗位基本信息
response.text 获取响应文本数据 获取html数据
re 会 1 不会 0
- 调用re模块里面findall方法 找到所有我们想要数据
- re.findall('匹配什么数据<匹配规则>', '什么地方')
- 从什么地方去匹配找寻什么样的数据内容
- 从 response.text 去找寻 window.__SEARCH_RESULT__ = (.*?)</script> 其中 (.*?) 这段是我们要的数据
- 正则表达式提取出来数据返回 ---> 列表数据类型
print(json_data) 打印字典数据, 显示一行
pprint(json_data) 打印字典数据, 显示多行, 展开效果
type() 内置函数, 查看数据类型
"""
html_data = re.findall('window.__SEARCH_RESULT__ = (.*?)</script>', response.text)[0]
# 转一下数据类型 转成字典数据类型
# 通过字典键值对取值, 提取我们想要的内容 根据冒号左边的内容[键], 提取冒号右边的内容[值]
json_data = json.loads(html_data)
# for循环遍历, 把列表里面的元素一个一个提取出来
for index in json_data['engine_jds']:
dit = {
'职位': index['job_name'],
'公司': index['company_name'],
'城市': index['workarea_text'],
'经验': index['attribute_text'][1],
'学历': index['attribute_text'][-1],
'薪资': index['providesalary_text'],
'福利': index['jobwelf'],
'公司领域': index['companyind_text'],
'公司规模': index['companysize_text'],
'公司性质': index['companytype_text'],
'发布日期': index['issuedate'],
'公司详情页': index['company_href'],
'职位详情页': index['job_href'],
}
csv_writer.writerow(dit)
print(dit)
三、效果展示
1)效果图
2)效果图
总结
嘿嘿,看完这个效果是不是,这么多公司岗位在招聘的,是不是又信心了呀~
找工作,就是这么简单,每个月都可以的啦!
欢迎大家点赞、评论、收藏、转发本文给需要的朋友,尤其那些正在求职,甚至一筹莫展的亲
朋。好啦,今天的案例就到这里结束啦,老规矩源码基地建撒。
✨完整的素材源码等:可以滴滴我吖!或者点击文末hao自取免费拿的哈~
🔨推荐往期文章——
项目0.2 【Python实战】WIFI密码小工具,甩万能钥匙十条街,WIFI任意连哦~(附源码)
项目0.3 【Python实战】再分享一款商品秒杀小工具,我已经把压箱底的宝贝拿出来啦~
项目0.1 【Python抢票神器】火车票枪票软件到底靠谱吗?实测—终极攻略。
项目0.6 【Python爬虫实战】使用Selenium爬某音乐歌曲及评论信息啦~
项目0.7 【Python爬虫实战】 不生产小说,只做网站的搬运工,太牛逼了~(附源码)
🎁文章汇总——
Python文章合集 | (入门到实战、游戏、Turtle、案例等)
(文章汇总还有更多你案例等你来学习啦~源码找我即可免费!)