入门小远学爬虫(二)(一)简单GET型网页爬虫实战——“前程无忧”爬虫岗位信息的爬取之网页分析

本文主要是介绍入门小远学爬虫(二)(一)简单GET型网页爬虫实战——“前程无忧”爬虫岗位信息的爬取之网页分析,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • 前程无忧网站
  • Step1:找准自己需要什么东西
  • Step2:进行网页分析
  • Step3:利用XPath Helper插件写出所需信息的大致Xpath路径
  • 小结


前程无忧网站

小远想知道全国各地的爬虫开发工程师的招聘要求,并进行横向比较和分析。大型招聘网站(比如前程无忧)上的岗位需求都是成百上千条,显然,网上的招聘信息太多,自己点开太过繁琐和复杂,手动完成不现实。
所以,
上爬虫
干!
目标,“前程无忧”的爬虫岗信息(网址:https://jobs.51job.com/pachongkaifa)


Step1:找准自己需要什么东西

我需要的数据
在这里插入图片描述

Step2:进行网页分析

使用Chrome浏览器打开网页,发现从第一页到第十三页的URL(统一资源定位器,就是网络地址)分别对应着“https://jobs.51job.com/pachongkaifa/p1/”到“https://jobs.51job.com/pachongkaifa/p13/”,由于网页布局都是一样的,所以只需要完成一页再写一个循环就可以完成所有信息的爬取。

查看网页源代码

右键->检查
在这里插入图片描述
或者直接Ctrl+Shift+C,选中要检查的内容,便可以快速定位到要检查的内容在源代码中的位置,个人比较推荐这种方法、

网页检查

以防万一,需要看一眼这个网页获取服务器上数据的方式是GET还是POST,一般来说,如果不涉及登录信息或者其他验证步骤的网页都是GET方式获取的,但此处为了讲解得更加详细,展示一下。(关于GET和POST以及其他HTML的相关知识请自行百度)

查看GET和POST

由于我们需要的内容组成为一个一个小的单元(本例中一个岗位就有自己的若干属性信息,如“岗位名称”、“所属公司”、“薪资待遇"等等),所以抽丝剥茧之后,需要整理出一个该网页所需信息的结构框架

大致如下两图所示:
框架1
框架2

Step3:利用XPath Helper插件写出所需信息的大致Xpath路径

关于本插件,博主有在之前的文章中提到,不再赘述

此处博主找到的Xpath路径为

//div[@class=“detlist gbox”]/div

插件内容

具体将本版块拿下来之后需要做什么,需要在程序中完成,将在之后的文章中陆续更新。

下一课已经更新

小结

分析网页三部曲:
1、找准自己需要获取的网页内容并检查获取方式(GET、POST)
2、查看源代码,理解其网页框架
3、通过插件更快地确定所需内容的Xpath路径。

如果觉得博主写的还不错的,欢迎点赞、评论、加关注,大家的访问就是博主更新文章不竭的源动力!

这篇关于入门小远学爬虫(二)(一)简单GET型网页爬虫实战——“前程无忧”爬虫岗位信息的爬取之网页分析的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/257774

相关文章

网页解析 lxml 库--实战

lxml库使用流程 lxml 是 Python 的第三方解析库,完全使用 Python 语言编写,它对 XPath表达式提供了良好的支 持,因此能够了高效地解析 HTML/XML 文档。本节讲解如何通过 lxml 库解析 HTML 文档。 pip install lxml lxm| 库提供了一个 etree 模块,该模块专门用来解析 HTML/XML 文档,下面来介绍一下 lxml 库

Spring Security 从入门到进阶系列教程

Spring Security 入门系列 《保护 Web 应用的安全》 《Spring-Security-入门(一):登录与退出》 《Spring-Security-入门(二):基于数据库验证》 《Spring-Security-入门(三):密码加密》 《Spring-Security-入门(四):自定义-Filter》 《Spring-Security-入门(五):在 Sprin

性能分析之MySQL索引实战案例

文章目录 一、前言二、准备三、MySQL索引优化四、MySQL 索引知识回顾五、总结 一、前言 在上一讲性能工具之 JProfiler 简单登录案例分析实战中已经发现SQL没有建立索引问题,本文将一起从代码层去分析为什么没有建立索引? 开源ERP项目地址:https://gitee.com/jishenghua/JSH_ERP 二、准备 打开IDEA找到登录请求资源路径位置

csu 1446 Problem J Modified LCS (扩展欧几里得算法的简单应用)

这是一道扩展欧几里得算法的简单应用题,这题是在湖南多校训练赛中队友ac的一道题,在比赛之后请教了队友,然后自己把它a掉 这也是自己独自做扩展欧几里得算法的题目 题意:把题意转变下就变成了:求d1*x - d2*y = f2 - f1的解,很明显用exgcd来解 下面介绍一下exgcd的一些知识点:求ax + by = c的解 一、首先求ax + by = gcd(a,b)的解 这个

hdu2289(简单二分)

虽说是简单二分,但是我还是wa死了  题意:已知圆台的体积,求高度 首先要知道圆台体积怎么求:设上下底的半径分别为r1,r2,高为h,V = PI*(r1*r1+r1*r2+r2*r2)*h/3 然后以h进行二分 代码如下: #include<iostream>#include<algorithm>#include<cstring>#include<stack>#includ

usaco 1.3 Prime Cryptarithm(简单哈希表暴搜剪枝)

思路: 1. 用一个 hash[ ] 数组存放输入的数字,令 hash[ tmp ]=1 。 2. 一个自定义函数 check( ) ,检查各位是否为输入的数字。 3. 暴搜。第一行数从 100到999,第二行数从 10到99。 4. 剪枝。 代码: /*ID: who jayLANG: C++TASK: crypt1*/#include<stdio.h>bool h

C#实战|大乐透选号器[6]:实现实时显示已选择的红蓝球数量

哈喽,你好啊,我是雷工。 关于大乐透选号器在前面已经记录了5篇笔记,这是第6篇; 接下来实现实时显示当前选中红球数量,蓝球数量; 以下为练习笔记。 01 效果演示 当选择和取消选择红球或蓝球时,在对应的位置显示实时已选择的红球、蓝球的数量; 02 标签名称 分别设置Label标签名称为:lblRedCount、lblBlueCount

uva 10387 Billiard(简单几何)

题意是一个球从矩形的中点出发,告诉你小球与矩形两条边的碰撞次数与小球回到原点的时间,求小球出发时的角度和小球的速度。 简单的几何问题,小球每与竖边碰撞一次,向右扩展一个相同的矩形;每与横边碰撞一次,向上扩展一个相同的矩形。 可以发现,扩展矩形的路径和在当前矩形中的每一段路径相同,当小球回到出发点时,一条直线的路径刚好经过最后一个扩展矩形的中心点。 最后扩展的路径和横边竖边恰好组成一个直

业务中14个需要进行A/B测试的时刻[信息图]

在本指南中,我们将全面了解有关 A/B测试 的所有内容。 我们将介绍不同类型的A/B测试,如何有效地规划和启动测试,如何评估测试是否成功,您应该关注哪些指标,多年来我们发现的常见错误等等。 什么是A/B测试? A/B测试(有时称为“分割测试”)是一种实验类型,其中您创建两种或多种内容变体——如登录页面、电子邮件或广告——并将它们显示给不同的受众群体,以查看哪一种效果最好。 本质上,A/B测

数论入门整理(updating)

一、gcd lcm 基础中的基础,一般用来处理计算第一步什么的,分数化简之类。 LL gcd(LL a, LL b) { return b ? gcd(b, a % b) : a; } <pre name="code" class="cpp">LL lcm(LL a, LL b){LL c = gcd(a, b);return a / c * b;} 例题: