【爬虫】实战-爬取Boss直聘信息数据

 专栏文章索引:爬虫

所用工具:

  • 自动化工具:DrissionPage

目录

一、找到目标数据(2个确定)​

1.确定目标网页

2.确定目标网址

二、编写代码​

三、查看数据​

五、总结


一、找到目标数据(2个确定)

1.确定目标网页

  •  打开目标网站

网站:「南京招聘网」海量南京人才招聘信息 - BOSS直聘(自动定位所在地点,我是南京)

  • 通过关键字搜索

  • 观察页面上是否有想要的数据

2.确定目标网址

我们直接用浏览器网网址输入框中的网址即可

  • 切换网页并复制粘贴网址

由于网址(域名+参数),域名不会变,参数可能会随着页面的变化而变化

我们可先翻到第2页

可以看到网址也发生了改变

我们可以切换不同的页码并将网址赋值粘贴下来(一般3-4个即可)

注意最后再重新翻到第一页

可以看到当重新翻到第一页的时候网址发生了变化,第一页用这个网址即可

  • 观察网址

可以看到只有page参数有变化,显然page参数对应的是页码数

二、编写代码

  • 导入所需库
# 导入WebPage库
from DrissionPage import WebPage
# 导入动作链
from DrissionPage.common import Actions
# 导入时间库
import time
# 导入读取和写入文件库
import csv
  • 查找元素获取数据
ele1 = page.eles('.job-card-body clearfix')
for i in range(len(ele1)):ele2 = ele1[i].ele('.job-card-left')ele3 = ele2.ele('.job-title clearfix')# title 岗位名称title = ele3.ele('.job-name').text# area 公司地址ele4 = ele3.ele('.job-area-wrapper')area = ele4.ele('.job-area').textele5 = ele2.ele('.job-info clearfix')# salary 薪水salary = ele5.ele('.salary').textele6 = ele5.ele('.tag-list')ele7 = ele6.eles('tag:li')# time 工作时限time = ele7[0].text# education 学历education = ele7[1].textele8 = ele1[i].ele('.job-card-right')ele9 = ele8.ele('.company-info')# name 公司名称name = ele9.ele('tag:a').textprint(title, area, salary, time, education, name)
  • 切换到下一页
ac.click('.ui-icon-arrow-right')
  • 保存数据
with open('招聘信息.csv', 'a', newline='', encoding='utf-8') as file:writer = csv.writer(file)# 写入数据writer.writerows(date_list)
  • 完整代码

【免费】爬取Boss直聘招聘信息数据资源-CSDN文库

三、查看数据

  • 控制台

  • 文件

五、总结

直接用DrissionPage即可,没有特别的地方


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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

一个简单的微信小程序表单提交样式模板

没什么东西&#xff0c;只是方便自己直接复制使用 .wxml <view class"box"><form bindsubmit"formSubmit"><view class"form-item"><text class"head">姓名&#xff1a;</text><input class"…

自动驾驶决策 - 规划 - 控制 (持续更新!!!)

总目录 Frenet与Cartesian坐标系 Apollo基础 - Frenet坐标系 车辆模型 车辆运动学和动力学模型 控制算法 PID控制器轨迹跟随实现 Pure Pursuit控制器路径跟随 路径跟踪算法Stanley 实现 c 无人驾驶LQR控制算法 c 实现 MPC自动驾驶横向控制算法实现 c 双环PID控制详细讲解 …

Maven项目如何导入依赖包

一、导入依赖包 导入mysql依赖包 第一步&#xff1a;登录Maven官网 Maven官网&#xff1a;https://mvnrepository.com/search?qmysql 第二步&#xff1a;点击MySql Connector Java 第三步&#xff1a;点击任意一个版本 第四步&#xff1a;将以下内容复制到pom.xml中 导入j…

springboot企业级抽奖项目-整体展示

项目地址 GitHub - kiorr/lottery: 企业红包雨项目 star截图q&#xff1a;3353441618可以领取资料 原型效果 前台 后台 业务分析 项目介绍 项目概述 京东的红包雨大家可能都参与过&#xff0c;在某段时间内随机发放不同的红包 本项目为一个通用的红包雨模式抽奖系统&…

Hive借助java反射解决User-agent编码乱码问题

一、需求背景 在截取到浏览器user-agent&#xff0c;并想保存入数据库中&#xff0c;经查询发现展示的为编码后的结果。 现需要经过url解码过程&#xff0c;将解码后的结果保存进数据库&#xff0c;那么有几种实现方式。 二、问题解决 1、百度&#xff1a;url在线解码工具 …

Python入门(小白友好)

知识图谱 搭建环境 安装Python:Download Python | Python.org 安装PyCharm:Download PyCharm: The Python IDE for data science and web development by JetBrains 注意:专业版本是收费的,新手小白使用社区版(community)即可 创建第一个项目: 一些PyCharm的设置(也适用…

C语言---指针的两个运算符:点和箭头

目录 点&#xff08;.&#xff09;运算符箭头&#xff08;->&#xff09;运算符需要注意实际例子 C语言中的指针是一种特殊的变量&#xff0c;它存储了一个内存地址。点&#xff08;.&#xff09;和箭头&#xff08;->&#xff09;是用于访问结构体和联合体成员的运算符。…

IPSEC VPN-详解原理

目录 IPSEC提供的安全服务 IPSEC协议簇 ​编辑 安全协议 1.传输模式 2. 隧道模式 AH ---鉴别头协议 AH提供的安全服务&#xff1a; AH头部 AH的保护范围 1.传输模式 2.隧道模式 ​编辑 ESP ---封装安全载荷协议 ESP提供的安全服务&#xff1a; ESP的头部 ESP的保护范围 1.传输…

3月19日做题

[NPUCTF2020]验证&#x1f40e; if (first && second && first.length second.length && first!second && md5(firstkeys[0]) md5(secondkeys[0]))用数组绕过first1&second[1] 这里正则规律过滤位(Math.) (?:Math(?:\.\w)?) : 匹配 …

②免费AI软件开发工具测评:通义灵码 VS 码上飞

前言 我又双叒叕来测评了&#xff01;上次给大家带来的是iFlyCode和CodeFlying两款产品的测评&#xff0c;受到了大家的一致好评~ 今天咱就继续来聊聊&#xff0c;这次我们选的的对象是通义灵码和码上飞&#xff0c;从名字上也能看到出来这两款产品一定是跟软件开发有关系的&…

Intewl手机电商项目模板:前端Vue开发的强大助手与无限可能

Intewl手机电商项目模板&#xff1a;前端Vue开发的强大助手与无限可能 在快速发展的移动互联网时代&#xff0c;手机电商项目已经成为商业竞争的新战场。而在这个战场中&#xff0c;如何快速、高效地开发出功能齐全、用户体验优秀的手机电商应用&#xff0c;成为了每一个开发者…

Java安全 反序列化(1) URLDNS链原理分析

Java安全 反序列化(1) URLDNS链原理分析 文章目录 Java安全 反序列化(1) URLDNS链原理分析前置知识应用分析payload1.新建HashMap类2.新建URL类3.获取URL 的 Class对象4.通过反射访问URL内部变量5.通过反射为URL中类赋值6.调用HashMap#put方法传入key和value7.再次通过反射为UR…

【LeetCode热题100】138. 随机链表的复制(链表)

一.题目要求 给你一个长度为 n 的链表&#xff0c;每个节点包含一个额外增加的随机指针 random &#xff0c;该指针可以指向链表中的任何节点或空节点。 构造这个链表的 深拷贝。 深拷贝应该正好由 n 个 全新 节点组成&#xff0c;其中每个新节点的值都设为其对应的原节点的值…

使用C#的winform控制数据库实例服务的运行状态

一、得到sqlserver的实例名 二、引用对应的程序集和命名空间 using System.ServiceProcess; C#操作服务要用的类 ServiceController 声明类 private ServiceController serviceController new ServiceController("MSSQLSERVER"); 三、判断服务状态 serviceCon…

阿里云2核4G4M轻量应用服务器价格165元一年

阿里云优惠活动&#xff0c;2核4G4M轻量应用服务器价格165元一年&#xff0c;4Mbps带宽下载速度峰值可达512KB/秒&#xff0c;系统盘是60GB高效云盘&#xff0c;不限制月流量&#xff0c;2核2G3M带宽轻量服务器一年87元12个月&#xff0c;在阿里云CLUB中心查看 aliyun.club 当前…

Bugku MISC做题笔记

简单套娃DX 这一题需要对png图片的结构有所了解。详细可参考https://www.w3.org/TR/png/ 幸好每一张图片只有一个错误&#xff0c;逐步调试&#xff0c;就可以发现所有错误&#xff0c;修正即可。具体错误参看python程序中的注释&#xff1a; import ossrc_dir .\\XD\\ de…

适配器模式(Adapter Pattern)

原文地址&#xff1a;https://jaune162.blog/design-pattern/adapter-pattern.html 更多精彩文章请移步&#xff1a;https://jaune162.blog 更多专题系列文章请移步&#xff1a;https://books.jaune162.blog 序言 在软件开发的世界中&#xff0c;我们经常会遇到一个棘手的问题…

Java8中Stream流API最佳实践Lambda表达式使用示例

文章目录 一、创建流二、中间操作和收集操作筛选 filter去重distinct截取跳过映射合并多个流是否匹配任一元素&#xff1a;anyMatch是否匹配所有元素&#xff1a;allMatch是否未匹配所有元素&#xff1a;noneMatch获取任一元素findAny获取第一个元素findFirst归约数值流的使用中…

分布式接口幂等性解析

一、概述 幂等性定义&#xff1a;用户对于同一操作发起的一次请求或者多次请求的结果是一致的&#xff0c;不会因为多次点击而产生了副作用。【同一操作指的是同一个浏览器&#xff0c;发送相同的请求】。 常见场景&#xff1a; 提交订单接口。返回提交结果时网络出现故障&am…

UDF提权

目录 一、UDF概述 二、提权条件 三、漏洞复现 (一) 信息收集 1. Nmap信息收集 1.1、查看当前IP地址 1.2、扫描当前网段&#xff0c;找出目标机器 1.3、快速扫描目标机全端口 2. dirb目录扫描 3. 第一个flag 3.1、目录遍历漏洞 3.2、flag 4. 敏感信息利用 (二) 漏…