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

news2024/9/27 7:14:56

 专栏文章索引:爬虫

所用工具:

  • 自动化工具: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').text
    ele5 = ele2.ele('.job-info clearfix')
    # salary 薪水
    salary = ele5.ele('.salary').text
    ele6 = ele5.ele('.tag-list')
    ele7 = ele6.eles('tag:li')
    # time 工作时限
    time = ele7[0].text
    # education 学历
    education = ele7[1].text
    ele8 = ele1[i].ele('.job-card-right')
    ele9 = ele8.ele('.company-info')
    # name 公司名称
    name = ele9.ele('tag:a').text
    
    print(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.coloradmin.cn/o/1538941.html

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

相关文章

夜神-安卓9模拟器安装 面具(Magisk)

方法1-自带本地安装 1.模拟器助手添加安卓9 的模拟器 2.启动模拟器并安装Magisk Terminal Emulator.apk、Magisk.apk 新开的安卓9 安装这两个apk 3.打开Magisk Terminal Emulator 1、允许 2、输入m回车 3、输入y回车 4、超级用户授权允许1、 2和3 4 允许后跳到这个…

xAI开发的一款巨大型语言模型(HLM)--Grok 1

在xAI发布Grok的权重和架构之后,很明显大型语言模型(LLM)的时代已经过去,现在是巨大型语言模型(HLM)的时代。这个混合专家模型发布了3140亿个参数,并且在Apache 2.0许可下发布。这个模型没有针对…

Jenkins中支持maven构建遇到仓库报错问题

目的 Jenkins中支持maven构建(Jenkins使用docker安装) 问题 1.构建一个maven项目 2.执行报错 /var/lib/jenkins/local_maven_repo/com/sx/root/1.0.4/root-1.0.4.pom.part.lock (No such file or directory) Failed to transfer Could not transfer artifact co…

【Spring整合QQ个人邮箱】

整合腾讯邮箱&#xff0c;首先需要在腾讯邮箱上开启服务&#xff0c;获取到授权码&#xff1b; 获取步骤如下&#xff1a; 进入设置 进入账号页 开启协议获取授权码 JavaMailSender配置 引入依赖 <!--邮件发送依赖--> <dependency><groupId>org.spring…

EI Scopus双检索| 2024年智能交通与未来出行国际会议(CSTFM 2024)

会议简介 Brief Introduction 2024年智能交通与未来出行国际会议(CSTFM 2024) 会议时间&#xff1a;2024年10月18日-20日 召开地点&#xff1a;中国杭州 大会官网&#xff1a;CSTFM 2024-2024 International Conference on Smart Transportation and Future Mobility(CSTFM 202…

学习笔记Day13:Linux进阶

Linux进阶 Vim——Linux自带的文本编辑器 功能强大 命令模式 使用 vim <file>进入后的默认模式可以上下左右移动光标 方向键/hjkl快速到所在行的开头^/末尾$向下移动30行30j&#xff08;上左右同&#xff09;上下翻页Ctrlf向上&#xff0c;Ctrlb向下翻页快速回到文件第…

网络原理(5)——IP协议(网络层)

目录 一、IP协议报头介绍 1、4位版本 2、4位首部长度 3、8位服务器类型 4、16位总长度 5、16位标识位 6、3位标志位 7、13位偏移量 8、8位生存空间 9、8位协议 10、16位首部检验和 11、32位源IP地址 12、32位目的IP地址 二、IP协议如何管理地址&#xff1f; 1、动…

【STM32嵌入式系统设计与开发】——6矩阵按键应用(4x4)

这里写目录标题 一、任务描述二、任务实施1、SingleKey工程文件夹创建2、函数编辑&#xff08;1&#xff09;主函数编辑&#xff08;2&#xff09;LED IO初始化函数(LED_Init())&#xff08;3&#xff09;开发板矩阵键盘IO初始化&#xff08;ExpKeyBordInit()&#xff09;&…

HCIA-Datacom H12-811 更新

完整题库及答案解析&#xff0c;请直接扫描上方二维码&#xff0c;持续更新中 在WLAN发展历史中&#xff0c;初级移动办公时代的主要无线协议标准不包括以下哪项&#xff1f; A. 802.11ac B. 802.11g C. 802.11b D. 802.11a 答案&#xff1a;A OSPF协议在进行主从关系选举…

Apipost智能Mock功能详解

在接口开发过程中&#xff0c;Mock功能可以帮助开发者快速测试和验证接口的正确性和稳定性&#xff0c;以便快速迭代和修复问题。Apipost推出智能Mock功能&#xff0c;可以在智能期望中填写一些触发条件&#xff0c;开启后&#xff0c;Apipost会根据已设置的触发条件&#xff0…

Qt教程 — 3.6 深入了解Qt 控件:Display Widgets部件(2)

目录 1 Display Widgets简介 2 如何使用Display Widgets部件 2.1 QTextBrowser组件-简单的文本浏览器 ​2.2 QGraphicsView组件-简单的图像浏览器 Display Widgets将分为两篇文章介绍 文章1&#xff08;Qt教程 — 3.5 深入了解Qt 控件&#xff1a;Display Widgets部件-CSDN…

MyBatis是纸老虎吗?(五)

最近看到这样一则消息《全球首位AI工程师诞生&#xff0c;“码农”未来会消失&#xff1f;》&#xff0c;文章提到百度董事长兼首席执行官李彦宏认为未来将不会存在“程序员”这种职业。行业大佬的这种说法&#xff0c;让我异常恐慌。难道程序员就这样被淘汰了&#xff1f;AI真…

YOLOv8 | 注意力机制 | ShuffleAttention注意力机制 提升检测精度

YOLOv8成功添加ShuffleAttention ⭐欢迎大家订阅我的专栏一起学习⭐ &#x1f680;&#x1f680;&#x1f680;订阅专栏&#xff0c;更新及时查看不迷路&#x1f680;&#x1f680;&#x1f680; YOLOv5涨点专栏&#xff1a;http://t.csdnimg.cn/1Aqzu YOLOv8涨点专栏…

力扣236 二叉树的最近公共祖先 Java版本

文章目录 题目描述代码 题目描述 给定一个二叉树, 找到该树中两个指定节点的最近公共祖先。 百度百科中最近公共祖先的定义为&#xff1a;“对于有根树 T 的两个节点 p、q&#xff0c;最近公共祖先表示为一个节点 x&#xff0c;满足 x 是 p、q 的祖先且 x 的深度尽可能大&…

PDF文件如何以数字进行批量重命名?以数字重命名的PDF文件

在日常生活和工作中&#xff0c;我们经常需要处理大量的PDF文件&#xff0c;如文档、报告、合同等。为了更高效地管理这些文件&#xff0c;一个有效的方式就是对它们进行批量命名。批量命名不仅能提高文件的组织性&#xff0c;还能节省大量时间。下面&#xff0c;我们将详细介绍…

【数据分析案列】--- 北京某平台二手房可视化数据分析

一、引言 本案列基于北京某平台的二手房数据&#xff0c;通过数据可视化的方式对二手房市场进行分析。通过对获取的数据进行清冼&#xff08;至关重要&#xff09;&#xff0c;对房屋价格、面积、有无电梯等因素的可视化展示&#xff0c;我们可以深入了解北京二手房市场的特点…

docker学习笔记 三-----docker安装部署

我使用的部署环境是centos 7.9 1、安装依赖工具 yum install -y yum-utils device-mapper-persistent-data lvm2 安装完成如下图 2、添加docker的软件信息源 yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo url地址为如…

飞桨AI应用@riscv OpenKylin

在riscv编译安装飞桨PaddlePaddle参见&#xff1a; 算能RISC-V通用云编译飞桨paddlepaddleopenKylin留档_在riscv下进行paddlelite源码编译-CSDN博客 安装好飞桨&#xff0c;就可以用飞桨进行推理了。刚开始计划用ONNX推理&#xff0c;但是在算能云没有装上&#xff0c;所以最…

C语言——程序拷贝文件

问题如下&#xff1a; 写一个程序拷贝文件&#xff1a; 使用所学文件操作&#xff0c;在当前目录下放一个文件data.txt&#xff0c;写一个程序&#xff0c;将data.txt文件拷贝一份&#xff0c;生成data_copy.txt文件。 基本思路&#xff1a; 打开文件data.txt&#xff0c;读…

服务器中了.[hpssupfast@mailfence.com].Elbie勒索病毒,数据还能恢复吗?

引言&#xff1a; .[hpssupfastmailfence.com].Elbie勒索病毒是一种网络攻击病毒&#xff0c;它会在感染用户的计算机系统中放置恶意软件&#xff0c;该软件会对用户的文件进行加密并要求支付赎金以解密文件。这种病毒通常通过网络钓鱼、木马植入等方式传播&#xff0c;利用用户…