当前位置:首页 > 科技  > 软件

写了个简单爬虫,收集 Boss 直聘自动驾驶岗位

来源: 责编: 时间:2024-03-18 17:45:44 262观看
导读朋友想知道 Boss 直聘上关于自动驾驶的岗位有哪些 ,于是,笔者写了一个简单的爬虫 crawler-boss ,将全国大城市相关岗位的信息收集起来。这篇文章,笔者想分享爬虫 crawler-boss 的设计思路。图片一、基本原理 Selenium + c

朋友想知道 Boss 直聘上关于自动驾驶的岗位有哪些 ,于是,笔者写了一个简单的爬虫 crawler-boss ,将全国大城市相关岗位的信息收集起来。Lrw28资讯网——每日最新资讯28at.com

这篇文章,笔者想分享爬虫 crawler-boss 的设计思路。Lrw28资讯网——每日最新资讯28at.com

图片图片Lrw28资讯网——每日最新资讯28at.com

一、基本原理 Selenium + chromedriver

对于很多动态渲染的网页而言,想要抓取它的数据,就需要对网页的 JS 代码以及 Ajax 接口等进行分析。Lrw28资讯网——每日最新资讯28at.com

而当 JS 代码混乱,难以分析,Ajax 的接口又含有很多加密参数的时候,就非常难以直接找出规律,那么上述过程会花费大量的时间和精力。Lrw28资讯网——每日最新资讯28at.com

图片图片Lrw28资讯网——每日最新资讯28at.com

上图中, Boss  直聘接口参数比较多,笔者并不想花太多时间研究这些参数,于是笔者选择了另一种方案:Selenium + chromedriver。Lrw28资讯网——每日最新资讯28at.com

Selenium是 web 浏览器自动化测试的工具,它可以模拟用户与所有主流浏览器之间的交互,比如点击,输入,抓取,拖拽等等。Lrw28资讯网——每日最新资讯28at.com

由于网页大多采用是 JavaScript 动态渲染,使得爬虫返回的结果可能与用户实际看到的网页并不一致。我们看到的网页可能是经过 Ajax 加载,或者是JavaScript以及其他算法计算后生成的。Lrw28资讯网——每日最新资讯28at.com

因此,我们可以使用 Selenium直接模拟浏览器运行,我们肉眼看到的是什么样,能够抓取的数据就是什么样。Lrw28资讯网——每日最新资讯28at.com

二、安装 chromedriver

WebDriver 是 Selenium 的核心组件 , 负责控制浏览器进行各种操作。WebDriver 可以通过不同的驱动程序与不同的浏览器进行通信,比如 ChromeDriver、FirefoxDriver 等。Lrw28资讯网——每日最新资讯28at.com

1、查看当前Google浏览器版本

打开Google浏览器,网址栏输入:chrome://settings/helpLrw28资讯网——每日最新资讯28at.com

图片图片Lrw28资讯网——每日最新资讯28at.com

2、下载对应版本的chromedriver

对照你的版本下载,当你使用的是 Chrome 版本 115 或更高版本,就点最上面的链接:Lrw28资讯网——每日最新资讯28at.com

https://chromedriver.chromium.org/downloads/Lrw28资讯网——每日最新资讯28at.com

图片图片Lrw28资讯网——每日最新资讯28at.com

找到你对应的版本,我这里是122.0.6261.129。Lrw28资讯网——每日最新资讯28at.com

图片图片Lrw28资讯网——每日最新资讯28at.com

下载完成之后,将文件解压后,拷贝到 /usr/local/bin/ 目录 。Lrw28资讯网——每日最新资讯28at.com

图片图片Lrw28资讯网——每日最新资讯28at.com

安装完 chromedriver 后,Java 应用中添加如下依赖:Lrw28资讯网——每日最新资讯28at.com

<dependency>    <groupId>org.seleniumhq.selenium</groupId>    <artifactId>selenium-server</artifactId>    <version>3.141.59</version></dependency>

然后通过如下代码,测试环境是否 OK 。Lrw28资讯网——每日最新资讯28at.com

public static void main(String[] args) {      WebDriver webDriver = new ChromeDriver();      webDriver.get("https://juejin.cn");}

点击运行,如果打开了掘金网页说明环境配置成功。Lrw28资讯网——每日最新资讯28at.com

三、流程分析

1、进入搜索页面 , 搜索框中输入‘自动驾驶’。Lrw28资讯网——每日最新资讯28at.com

图片图片Lrw28资讯网——每日最新资讯28at.com

图片图片Lrw28资讯网——每日最新资讯28at.com

2、搜索结果若出现登录浮窗,则关闭,将页面中职位列表通过 class 截取出来,保存到数据库。Lrw28资讯网——每日最新资讯28at.com

图片图片Lrw28资讯网——每日最新资讯28at.com

图片图片Lrw28资讯网——每日最新资讯28at.com

3、点击下一页Lrw28资讯网——每日最新资讯28at.com

图片图片Lrw28资讯网——每日最新资讯28at.com

图片图片Lrw28资讯网——每日最新资讯28at.com

四、爬虫演示

执行完成之后,职位记录表新增了接近 2000 条记录。Lrw28资讯网——每日最新资讯28at.com

图片图片Lrw28资讯网——每日最新资讯28at.com

五、写到最后

当我们将 Selenium 作为爬虫工具时,尽管它有很多优点,但也存在明显的缺点。Lrw28资讯网——每日最新资讯28at.com

Selenium 模拟浏览器动作,除了加载需要的数据外,还会加载图片、JS、CSS等不必要的内容,导致网络资源和计算资源消耗增加,爬取速度变慢,爬取规模受限。Lrw28资讯网——每日最新资讯28at.com

因此,长期大规模使用 Selenium 作为生产工具不是一个明智的选择。Lrw28资讯网——每日最新资讯28at.com

然而,如果只是想在个人电脑上快速抓取少量数据,Selenium 确实是一个非常方便的工具。Lrw28资讯网——每日最新资讯28at.com

最后, crawler-boss 的源码实现非常简单,假如同学们感兴趣,可以关注公众号,回复 「爬虫」即可获取。Lrw28资讯网——每日最新资讯28at.com

参考文档:

https://zhuanlan.zhihu.com/p/137710454Lrw28资讯网——每日最新资讯28at.com

https://juejin.cn/post/7284318118993068051Lrw28资讯网——每日最新资讯28at.com

本文链接://www.dmpip.com//www.dmpip.com/showinfo-26-77528-0.html写了个简单爬虫,收集 Boss 直聘自动驾驶岗位

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com

上一篇: 故障现场 | 消息发送居然有这么大的坑

下一篇: Python黑科技:探索反射和动态属性的无限可能

标签:
  • 热门焦点
  • Redmi Pad评测:红米充满野心的一次尝试

    Redmi Pad评测:红米充满野心的一次尝试

    从Note系列到K系列,从蓝牙耳机到笔记本电脑,红米不知不觉之间也已经形成了自己颇有竞争力的产品体系,在中端和次旗舰市场上甚至要比小米新机的表现来得更好,正所谓“大丈夫生居
  • 6月安卓手机性价比榜:Note 12 Turbo断层式碾压

    6月安卓手机性价比榜:Note 12 Turbo断层式碾压

    6月份有一个618,虽然这是京东周年庆的日子,但别的电商也都不约而同的跟进了,反正促销没坏处,厂商和用户都能满意。618期间一些产品也出现了历史低价,那么各个价位段的产品性价比
  • 5月iOS设备好评榜:iPhone 14仅排第43?

    5月iOS设备好评榜:iPhone 14仅排第43?

    来到新的一月,安兔兔的各个榜单又重新汇总了数据,像安卓阵营的榜单都有着比较大的变动,不过iOS由于设备的更新换代并没有那么快,所以相对来说变化并不大,特别是iOS好评榜,老款设
  • 得物效率前端微应用推进过程与思考

    得物效率前端微应用推进过程与思考

    一、背景效率工程随着业务的发展,组织规模的扩大,越来越多的企业开始意识到协作效率对于企业团队的重要性,甚至是决定其在某个行业竞争中突围的关键,是企业长久生存的根本。得物
  • 十个简单但很有用的Python装饰器

    十个简单但很有用的Python装饰器

    装饰器(Decorators)是Python中一种强大而灵活的功能,用于修改或增强函数或类的行为。装饰器本质上是一个函数,它接受另一个函数或类作为参数,并返回一个新的函数或类。它们通常用
  • 谷歌KDD'23工作:如何提升推荐系统Ranking模型训练稳定性

    谷歌KDD'23工作:如何提升推荐系统Ranking模型训练稳定性

    谷歌在KDD 2023发表了一篇工作,探索了推荐系统ranking模型的训练稳定性问题,分析了造成训练稳定性存在问题的潜在原因,以及现有的一些提升模型稳定性方法的不足,并提出了一种新
  • 从零到英雄:高并发与性能优化的神奇之旅

    从零到英雄:高并发与性能优化的神奇之旅

    作者 | 波哥审校 | 重楼作为公司的架构师或者程序员,你是否曾经为公司的系统在面对高并发和性能瓶颈时感到手足无措或者焦头烂额呢?笔者在出道那会为此是吃尽了苦头的,不过也得
  • 重估百度丨大模型,能撑起百度的“今天”吗?

    重估百度丨大模型,能撑起百度的“今天”吗?

    自象限原创 作者|程心 罗辑2023年之前,对于自己的&ldquo;今天&rdquo;,百度也很迷茫。&ldquo;新业务到 2022 年底还是 0,希望 2023 年出来一个 1。&rdquo;这是2022年底,李彦宏
  • AMD的AI芯片转单给三星可能性不大 与台积电已合作至2nm制程

    AMD的AI芯片转单给三星可能性不大 与台积电已合作至2nm制程

    据 DIGITIMES 消息,英伟达 AI GPU 出货逐季飙升,接下来 AMD MI 300 系列将在第 4 季底量产。而半导体业内人士表示,近日传出 AMD 的 AI 芯片将转单给
Top
Baidu
map