• 【Python实战】年底找工作,年后不用愁,多个工作岗位随你挑哦~(灵魂发问找工作难嘛?)


    前言

    有温度 有深度 有广度 就等你来关注哦~

    所有文章完整的素材+源码都在👇👇

    粉丝白嫖源码福利,请移步至CSDN社区或文末公众hao即可免费。

    哈喽!我是栗子同学,今天继续更新——聊一聊找工作的那些事儿~

    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)主程序

    1. # 数据请求模块
    2. import requests
    3. # 导入正则表达式模块
    4. import re
    5. # 导入json
    6. import json
    7. # 导入格式化输出模块
    8. from pprint import pprint
    9. # 导入csv模块
    10. import csv
    11. # 创建文件
    12. f = open('data.csv', mode='a', encoding='utf-8', newline='')
    13. csv_writer = csv.DictWriter(f, fieldnames=[
    14. '职位',
    15. '公司',
    16. '城市',
    17. '经验',
    18. '学历',
    19. '薪资',
    20. '福利',
    21. '公司领域',
    22. '公司规模',
    23. '公司性质',
    24. '发布日期',
    25. '公司详情页',
    26. '职位详情页',
    27. ])
    28. csv_writer.writeheader()
    29. """
    30. 1. 发送请求, 模拟浏览器对于url地址发送请求
    31. - 需要模块
    32. - 模拟浏览器, 是用什么伪装模拟的
    33. 请求头
    34. - 批量替换方法:
    35. 1. 选择替换内容, ctrl + R
    36. 2. 点击 .*
    37. 3. 输入正则命令 进行替换
    38. (.*?): (.*)
    39. '$1': '$2',
    40. """
    41. # 确定请求url地址
    42. 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'
    43. # 伪装模拟 headers 字典数据类型
    44. headers = {
    45. # User-Agent 用户代理 浏览器基本身份信息
    46. 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.0.0 Safari/537.36',
    47. }
    48. # 发送请求
    49. # 调用requests模块里面get请求方法, 对于url地址发送请求, 并且携带上headers请求头伪装, 最后用自定义变量名response接收返回数据
    50. response = requests.get(url=url, headers=headers)
    51. """
    52. 2. 获取数据, 获取服务器返回响应数据
    53. 开发者工具里面所看到 response 显示内容
    54. 3. 解析数据, 提取我们想要的数据内容
    55. 招聘岗位基本信息
    56. response.text 获取响应文本数据 获取html数据
    57. re 会 1 不会 0
    58. - 调用re模块里面findall方法 找到所有我们想要数据
    59. - re.findall('匹配什么数据<匹配规则>', '什么地方')
    60. - 从什么地方去匹配找寻什么样的数据内容
    61. - 从 response.text 去找寻 window.__SEARCH_RESULT__ = (.*?) 其中 (.*?) 这段是我们要的数据
    62. - 正则表达式提取出来数据返回 ---> 列表数据类型
    63. print(json_data) 打印字典数据, 显示一行
    64. pprint(json_data) 打印字典数据, 显示多行, 展开效果
    65. type() 内置函数, 查看数据类型
    66. """
    67. html_data = re.findall('window.__SEARCH_RESULT__ = (.*?)', response.text)[0]
    68. # 转一下数据类型 转成字典数据类型
    69. # 通过字典键值对取值, 提取我们想要的内容 根据冒号左边的内容[键], 提取冒号右边的内容[值]
    70. json_data = json.loads(html_data)
    71. # for循环遍历, 把列表里面的元素一个一个提取出来
    72. for index in json_data['engine_jds']:
    73. dit = {
    74. '职位': index['job_name'],
    75. '公司': index['company_name'],
    76. '城市': index['workarea_text'],
    77. '经验': index['attribute_text'][1],
    78. '学历': index['attribute_text'][-1],
    79. '薪资': index['providesalary_text'],
    80. '福利': index['jobwelf'],
    81. '公司领域': index['companyind_text'],
    82. '公司规模': index['companysize_text'],
    83. '公司性质': index['companytype_text'],
    84. '发布日期': index['issuedate'],
    85. '公司详情页': index['company_href'],
    86. '职位详情页': index['job_href'],
    87. }
    88. csv_writer.writerow(dit)
    89. 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、案例等)

    (文章汇总还有更多你案例等你来学习啦~源码找我即可免费!)

  • 相关阅读:
    Linux的指令和用途(持续更新)
    js vue 时分秒倒计时
    【数据结构】二叉搜索树,AVL树,2-3树,红黑树、B树B+树简单笔记
    vue-danmak 弹幕交互组件
    大数据学习——linux操作系统(Centos)安装mysql(Hive的元数据库)
    5.9图书管理案例
    请问如何在proteus里画出电压器两边的箭头?
    http进一步认识
    HarmonyOS ArkTS开发语言介绍(三)
    Docker 安装oracle12c容器并创建新用户
  • 原文地址:https://blog.csdn.net/xy258009/article/details/127830815