站点中山国际人才网岗位采集练习https://www.job001.cn

news2024/10/20 5:22:41

练习要求
从中山国际人才网,添加搜索岗位检索条件,采集所有分页list中的所有岗位信息。
比如搜索条件 15-20K条件的岗位列表
搜索列表:展示岗位,薪资,经验,学历,公司,地点
重点掌握,针对一条岗位记录,采用了xpath获取到jobslist进行岗位定位,然后基于当前节点再进行名称,薪资,学历等元素进行定位,这个比直接定位会更加精准数据无偏差。
以下是部分代码示例
本次练习要求,在代码给出的岗位列表中,增加【地点】和【行业】
结果如下
岗位:海外渠道-人造石板材-销售经理,薪资:15-30K,经验:3-5年,学历:本科,公司:热浪科技,地点:珠海市/金湾区,行业:机械/设备/重工

import requests
import time
import random
from lxml import etree
import re

def get_soup(url):
    #目标练习站点中山国际人才网https://www.job001.cn/
    #实现请求url列表的页面内容解析
    response = requests.get(url)
    tree = etree.HTML(response.text)
    jobs = tree.xpath('//div[@class="jobsList"]')
    for job in jobs:
        job_name = re.sub( r'\s+', '', job.xpath('.//a[@class="jobNameCon"]/text()')[0])
        salary =re.sub( r'\s+', '',  job.xpath('.//span[@class="salaryList"]/text()')[0])
        age =job.xpath('.//div[@class="jobLeft"]/dl/dd[1]/text()')[1].replace('\n','').replace(' ','')
        xueli=job.xpath('.//div[@class="jobLeft"]/dl/dd[1]/text()')[2].replace('\n','').replace(' ','')
        company=job.xpath('.//div[@class="jobRight"]/dl/dt/a/text()')[0].replace('\n','').replace(' ','')
        address=''
        print(f"岗位:{job_name},薪资:{salary},经验:{age},学历:{xueli},公司:{company},地点:{address}")
    pass



if __name__ == '__main__':
    #实现3秒内随机暂停,并按分页规律请求岗位清单
    for i in range(1,170):
        # url=f'https://www.job001.cn/jobs?keyType=0&keyWord=&jobTypeId=&jobType=%E8%81%8C%E4%BD%8D%E7%B1%BB%E5%9E%8B&industry=&industryname=%E8%A1%8C%E4%B8%9A%E7%B1%BB%E5%9E%8B&workId=25.308&workPlace=%E4%B8%AD%E5%B1%B1%E5%B8%82&salary=4,5&salaryType=&entType=&experience=&education=&entSize=&benefits=&reftime=&workTypeId=&sortField=&pageNo={i}&curItem=&searchType=1'
        url=f'https://www.job001.cn/jobs?keyType=0&keyWord=&jobTypeId=&jobType=%E8%81%8C%E4%BD%8D%E7%B1%BB%E5%9E%8B&industry=&industryname=%E8%A1%8C%E4%B8%9A%E7%B1%BB%E5%9E%8B&workId=25.293&workPlace=%E7%8F%A0%E6%B5%B7%E5%B8%82&salary=4,5&salaryType=&entType=&experience=&education=&entSize=&benefits=&reftime=&workTypeId=&sortField=&pageNo={i}&curItem=&searchType=1'
        get_soup(url)
        pause_time = random.uniform(0, 3)
        time.sleep(pause_time)

结果集展示

岗位:海外渠道-人造石板材-销售经理,薪资:15-30K,经验:3-5年,学历:本科,公司:热浪科技,地点:珠海市/金湾区
岗位:海外渠道-销售经理(卫浴),薪资:15-25K,经验:3-5年,学历:本科,公司:热浪科技,地点:珠海市/金湾区
岗位:生产经理/车间主任,薪资:13-16K,经验:6-9年,学历:本科,公司:热浪科技,地点:珠海市/金湾区
岗位:澳门某酒店招专职管家,薪资:11-16K,经验:1-2年,学历:大专,公司:珠海市大把人信息咨询服务有限公司,地点:珠海市/香洲区
岗位:土建主管工程师,薪资:10-20K,经验:6-9年,学历:大专,公司:广东远尚建设工程有限公司,地点:斗门区/白蕉
岗位:澳门某工程冷气安装/维修工,薪资:13-15K,经验:3-5年,学历:学历不限,公司:珠海市大把人信息咨询服务有限公司,地点:珠海市/香洲区
岗位:澳门某连锁公司招销售员(多名),薪资:15-20K,经验:1-2年,学历:学历不限,公司:珠海市大把人信息咨询服务有限公司,地点:珠海市/香洲区
岗位:澳门某物流公司招聘招聘职位:仓管员,薪资:14-18K,经验:1-2年,学历:初中及以下,公司:珠海市大把人信息咨询服务有限公司,地点:珠海市/香洲区
岗位:电气工程师,薪资:10-15K,经验:3-5年,学历:大专,公司:珠海市精广包装机械设备有限公司,地点:珠海市/香洲区

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2219034.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

JMeter之mqtt-jmeter 插件介绍

前言 mqtt-jmeter插件是JMeter中的一个第三方插件,用于支持MQTT(Message Queuing Telemetry Transport)协议的性能测试。MQTT是一种轻量级的发布/订阅消息传输协议,广泛应用于物联网和传感器网络中。 一、安装插件 mqtt-jmeter项目…

【智能算法应用】雪消融优化算法求解二维路径规划问题

摘要 本文研究了雪消融优化算法在二维路径规划问题中的应用。该算法基于自然界中雪消融现象的模拟,通过优化策略寻找无人机路径的最优解。实验结果表明,该算法在路径规划中表现出较高的效率和收敛速度,能够有效地避开障碍物并找到代价最低的…

基于SpringBoot+Vue的校园周边美食探索及分享平台的设计与实现(带文档)

基于SpringBootVue的校园周边美食探索及分享平台的设计与实现(带文档) 开发语言:Java数据库:MySQL技术:SpringBootMyBatisVue等工具:IDEA/Ecilpse、Navicat、Maven 源码 校园周边美食探索及分享平台是一个旨在为校园用户提供便捷的美食发现和分享服务的系统。该平…

我的JAVA项目构建

1.Maven maven就是pip 设置maven下载的的jar包位置 换源 下载插件maven-search 配置dependency 2.Tomcat 设置环境变量JAVA_HOME 设置编码方式 方框就是路径的前缀 3.Servlet 新建项目 写一个类继承HttpServlet,复写doGet(应对Get请求),doPost(应对…

vue组件传值之$attrs

1.概述:$attrs用于实现当前组件的父组件,向当前组件的子组件通信(祖-》孙) 2.具体说明:$attrs是一个对象,包含所有父组件传入的标签属性。 注意:$attrs会自动排除props中声明的属性&#xff0…

从0开始深度学习(14)——模型选择、欠拟合、过拟合

① 模型在训练数据上拟合的比在潜在分布中更接近的现象,就叫过拟合(overfitting) ② 用于对抗过拟合的技术称为正则化(regularization) 1 训练误差和泛化误差 ①训练误差(training error)&…

scrapy 爬虫学习之【中医药材】爬虫

本项目纯学习使用。 1 scrapy 代码 爬取逻辑非常简单,根据url来处理翻页,然后获取到详情页面的链接,再去爬取详情页面的内容即可,最终数据落地到excel中。 经测试,总计获取 11299条中医药材数据。 import pandas as…

CTFHUB技能树之HTTP协议——响应包源代码

开启靶场,打开链接: 是个贪吃蛇小游戏,看不出来有什么特别的地方 用burp抓包看看情况: 嗯?点击“开始”没有抓取到报文,先看看网页源代码是什么情况 居然直接给出flag了,不知道这题的意义何在 …

某MDM主数据管理系统与微软Dynamic CRM系统(国内节点)集成案例

一、需求分析 需要完成的核心场景: 客户主数据:通过SAP PO集成中间件平台,某MDM主数据实时推送客户主数据信息至微软CRM系统,方便微软CRM系统进行客户方面的管理,并供微软CRM查询员工信息,修改员工&…

IDEA运行Java程序时出错。提示:命令行过长。通过 JAR 清单或通过类路径文件缩短命令行,然后重新运行。

文章目录 一、遇到问题二、分析问题三、解决办法 一、遇到问题 运行 OpenCVUtils.test 时出错。命令行过长。 通过 JAR 清单或通过类路径文件缩短命令行,然后重新运行。二、分析问题 IDEA提示很明显了。 三、解决办法 运行——>编辑配置 运行/调试配置——&g…

024_Symbolic_Math_in_Matlab符号数学工具箱的使用思路

符号运算与数值计算 缘,妙不可言 给本科、硕士、博士、研究实习员、助理研究员、副研究员改过Matlab代码,最有意思也最好玩的就是兄弟姐妹们喜欢把符号运算跟数值计算混合在一起。 从概念上看,还是挺不错的。 大佬们的计划都是这样的&…

64页精品PPT | 汽车经销商数据应用解决方案

汽车经销商正面临前所未有的盈利能力挑战。从18年起 ,传统燃油车汽车行业开始步入低速增长阶段 ,卖车已经挣不到钱 ,利润往往来自任务完成的厂家返利;新兴的直营模式的出现 ,冲击了传统授权经销的方式 ,疫情…

车辆管理新篇章:SpringBoot技术解析

2相关技术 2.1 MYSQL数据库 MySQL是一个真正的多用户、多线程SQL数据库服务器。 是基于SQL的客户/服务器模式的关系数据库管理系统,它的有点有有功能强大、使用简单、管理方便、安全可靠性高、运行速度快、多线程、跨平台性、完全网络化、稳定性等,非常…

sns数据分析

探索性数据分析 这一部分目的在于了解数据&#xff0c;包括数据是什么类型&#xff0c;数据有什么特点 数据信息 print(data.shape) data.info()(1086, 12) <class pandas.core.frame.DataFrame> Index: 1086 entries, 2020/7/1 0:00 to nan Data columns (total 12 c…

鸿蒙网络编程系列24-Web组件与应用互操作示例

1. APP内嵌网页与应用互操作概述 在通常的APP开发中&#xff0c;经常会采用内嵌网页的形式&#xff0c;通过网页来展现丰富的动态内容&#xff0c;虽少了很多原生开发的功能&#xff0c;但是这么做无可厚非&#xff0c;毕竟APP需要适配的系统平台很多&#xff0c;比如安卓、苹…

leetcode289:生命游戏

根据 百度百科 &#xff0c; 生命游戏 &#xff0c;简称为 生命 &#xff0c;是英国数学家约翰何顿康威在 1970 年发明的细胞自动机。 给定一个包含 m n 个格子的面板&#xff0c;每一个格子都可以看成是一个细胞。每个细胞都具有一个初始状态&#xff1a; 1 即为 活细胞 &am…

babylonjs shader学习之copy shadertoy案例

shadertoy案例&#xff1a; 准备 const onSceneReady (scene: Scene) > {const light new HemisphericLight(light, new Vector3(0, 1, 0), scene);light.intensity 0.7;Effect.ShadersStore[planeMatVertexShader] precision highp float;attribute vec3 position;attr…

SpringMVC一个拦截器和文件上传下载的完整程序代码示例以及IDEA2024部署报错 找不到此 Web 模块的 out\artifacts\..问题

一、SpringMVC一个拦截器和文件上传下载的完整程序代码示例 本文章是一个 SpringMVC拦 截器和文件上传下载的完整程序代码示例&#xff0c;使用的开发工具是 IntelliJ IDEA 2024.1.6 (Ultimate Edition)&#xff0c; 开发环境是 OpenJDK-21 java version 21.0.2。Tomcatt版本为…

Flux.concat 使用说明书

public static <T> Flux<T> concat(Iterable<? extends Publisher<? extends T>> sources)Concatenate all sources provided in an Iterable, forwarding elements emitted by the sources downstream. 连接可迭代集合中提供的所有源&#xff0c;将…

【web】JDBC

项目连接数据库 右侧导航栏找到databsae 如果没有驱动&#xff0c;先下载驱动 填写数据库用户名密码 勾选对应的表即可 JDBC代码流程 1,配置信息 2,加载驱动 从MySQL Connector/J 5.1版本开始&#xff0c;推荐使用com.mysql.cj.jdbc.Driver这个新的驱动类。 3,链接数据库…