python爬虫爬猎聘网获取多条职责描述中有Linux需求的招聘信息

本文介绍了作者使用Python爬虫从猎聘网上筛选含有Linux需求的招聘信息的过程,包括选题意义、研究内容、系统分析、设计与实现、测试以及遇到的挑战。通过爬虫技术,实现了对网页内容的高效筛选,提取了有价值的招聘信息。
摘要由CSDN通过智能技术生成

python爬虫爬猎聘网获取多条职责描述中有Linux需求的招聘信息

下列是我爬虫的作业

摘 要

随着现代化社会的飞速发展,网络上巨大信息量的获取给用户带来了许多的麻烦。由于工作和生活节奏的需求,人们需要更加高效便捷地提取出自己想要的信息。网络信息的筛选和过滤便成为重要的一个环节,从而衍生出网络爬虫这一技术来为大家提高互联网信息获取的高效性和准确性。本文的目的在于研究和探索如何通过爬虫技术的应用让用户高效地获取到特定的信息。

Abstract

With the rapid development of modern society, the huge amount of information on the network has brought many troubles to users. Because of the need of work and life rhythm, people need to extract the information they want more efficiently and conveniently. Screening and filtering of network information has become an important link, which derives the technology of network crawler to improve the efficiency and accuracy of Internet information acquisition. The purpose of this paper is to study and explore how to make users get specific information efficiently through the application of crawler technology.

前言

随着互联网的高速发展,网络上的信息量迅速增加,特别是近些年来,网络信息呈爆发式增长。有时候我们访问网页时,网页上出现太多的不必要的信息,比如各种垃圾广告和植入信息。页面分析的爬虫技术就是基于此产生的,用来获取更有价值的信息。
  在互联网的发展中,用户体验占据了至关重要的作用。正是由于每天都有巨大的信息量通过互联网传递给我们,所以我们要通过工具对其进行筛选,对于我们所需要的信息,则可以借助关键字来获取我们所想要的信息。
从上个世纪九十年代开始,人们就已经开展和研究网络爬虫。爬虫这项技术在现在已经非常成熟了,同时它也是搜索引擎的重要组成成分。Nutch,Larbin,Heritrix都是网络上很有名的开源爬虫。对于网络爬虫来说,网页搜索策略和网页分析策略都是很重要的部分。
本文就是研究如何从招聘网站上筛选爬取自己想要的信息并统计。

一、 选题目的和意义

之所以选择爬虫筛选特定信息这个课题。首先我觉得很有意思,通过对网页源码的分析可以加强我对网页设计的了解,也可以加深我对之前学过标签的记忆。其次是因为其实用性强,爬虫真的很强大,我可以爬很多我想了解的网站情况,通过数据分析一统计,结果一目了然。还可以定时监控网站,真的省时省力。
爬虫在我以后的生活工作中也可以经常被用到,我可以了解我想知道的商城商品价格库存信息,也可以了解行业的风向。还可以通过爬虫在多个网站注册投递简历,提高时间效率。总的来说,爬虫,让生活更美好!

二、 研究内容及要求

(一) 研究内容
  用Python或Java或C/C++等编写网络爬虫,获取1000条有Linux系统需求的招聘信息。
(二) 课题要求

  1. 确定招聘网站及组织结构;
  2. 爬取职位介绍的url、职位名称、公司名称、城市、发布时间、职责描述等信息;
  3. 检索出==“职责描述”==中有“Linux”的招聘信息。

三、 系统分析

本爬虫系统较为简洁,只需完成对网站中特定信息的筛选即可。

四、 概要设计

网页爬虫要实现更加人性化,就要从指定的URL地址抓取到特定的页面内容,接着解析出页面中的链接地址,然后再去访问这些URL,重复进行,直到得到的结果满意。
根据需求,应需要实现以下几个基本功能模块:

  1. 数据请求模块:主要实现的是通过从URL管理传获取 URL,进行地址析,通过 HTTP 协议访问URL指定的页面,同时接收服务器端传送的页面信息。
  2. 数据解析模块:主要是实现提取页面内容,提取的内容有Css 脚本,图片,视频,文本,链接,Js,等其他文件。
  3. 异常容错模块:主要是防止在爬取信息过程中被异常信息打断。
  4. 筛选汇总模块:主要是实现将提取的有效信息汇总写入文件。

五、 详细设计

(一) 数据请求模块
   数据请求的方式一般有两种:GET方法和POST方法。本案例采用get
利用Python构建数据请求的方式有很多,在python3中,主要有urllib和requests两个类库可以实现该功能。

urllib是官方标准库,我用的是第三方库requests,它是基于urllib编写的,比urllib用起来更加便捷,可以节约时间。

requests安装方法:
pip install requests
由于我同时安装了python2,3:python2又不能随便删所以我要用如下命令
python3 –m pip install requests

利用requests构建数据请求主要方式:
  import requests
   req = request.get(url)
或者
  import requests
   req = requests.post(url)
其中,get()与post()中都可以添加headers、params等参数,以字典的形式传递即可。一般来说,简单的网页通过传入url数据即可成功请求数据。不过一些网站采用了反爬虫机制,需要传入headers及params等参数,以模拟浏览器访问、用户登陆等行为,才可以正常请求数据。
使用免费代理实例:
   import requests

根据协议类型,选择不同的代理
proxies = {
“http”: “http://12.34.56.79:9527”,
“https”: “http://12.34.56.79:9527”,
}
response = requests.get(“http://www.baidu.com”, proxies = proxies)
print response.text

用此链接查看浏览器请求头信息:
https://www.whatismybrowser.com/detect/what-http-headers-is-my-browser-sending
  有时一个请求头太少了,可以借用伪装头技术。自己可以写模块,也可以导入fake-useragent库。
不过对我的程序影响不大,还影响性能,所以我没用。

由于我这次是爬猎聘网,我先得了解他们链接之间的关系才能连续爬多个页面
我将缩小范围从计算机软件类中进行筛选
范围筛选
分析各链接去除缀码:
第一页实例:
https://www.liepin.com/zhaopin/?init=-1&headckid=943dbbbe5676df58&fromSearchBtn=2&ckid=943dbbbe5676df58&degradeFlag=0&siTag=1B2M2Y8AsgTpgAmY7PhCfg~fA9rXqu

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值