分享好友 最新资讯首页 最新资讯分类 切换频道
python【系列教程】之网络爬虫
2024-12-28 11:38

爬虫的应用方面

  1. 通过网络技术向指定的url发送请求,获取服务器响应内容
  2. 使用某种技术(如正则表达式,XPath等)提取页面中我们感兴趣的信息
  3. 高效的识别响应页面中的链接信息,顺着这些链接递归

安装scrapy

pip install scrapy

本人在安装的时候并没有报以上错误

成功安装scrapy之后,可以通过doc来查看scrapy的文档 。

python -m pydoc -p 8899

打开浏览器查看localhost:8899的页面,可以在python安装目录的libsite-packages下看到scrapy的文档

 

创建scrapy 项目

scrapy startproject ZhipinSpider

 

 

 下面我们来爬去boss直聘 广州地区的招聘信息https://www.zhipin.com/c101280100/h_101280100

使用scrapy提供的shell调试工具来抓取该页面中的信息,使用如下命令来开启shell调试

 scrapy shell https://www.zhipin.com/c101280100/h_101280100

运行上面命令,将会看到如果所示的提示信息

 

scrapy shell -s USER_AGENT='Mozilla/5.0' https://www.zhipin.com/c101280100/h_101280100

response.xpath('//div[@class="job-primary"]/div/h3/a/div/text()').extract()

 

 response.css('div.job-primary>div.info-primary>h3.name span').extract()

 

  (1)编写items.py文件

(2

 scrapy genspider job_position "zhipin.com"

 

 

 

 

 

(3)编写piplines.py文件,该文件负责将所爬取的数据写入文件或者数据库中

 配置settings.py文件

回顾一下上面的开发过程,使用scrapy开发爬虫的核心工作就是三步。

  1. 定义Item类,由于Item只是一个DTO对象,因此定义Item类很简单
  2. 开发Spider类。这一步是核心,Spider使用XPath从页面中提取项目所需的信息,并用这些信息来封装Item对象
  3. 开发Pipeline。Pipline负责处理Spider获取的Item对象

经过上面的步骤,这个基于Scrapy的spider已经开发完成,在命令行窗口中进入ZhipinSpider项目目录下,执行如下命令启动Spider。

scrapy crawl job_position

这里的job_position就是前面定义 的Spider名称

 

 

 

 

 

scrapy shell https://unsplash.com/

 

 

 

 创建项目

 scrapy startproject UnsplashImageSpider

 

 

 

 

 

 

 (2)常用的反爬虫手段

1.IP地址验证

 2.禁用cookie

 3.违反爬虫规则文件

4.限制访问频率

 

 5.图形验证码

(3)整合Selenium模拟浏览器行为

 1.为python安装 selenium 库

pip  install selenium

 2.下载浏览器驱动

 

3.安装目标浏览器

 

 

 

 

 

 

 一句话,只要技术到位,网络上没有爬取不到的数据,当然,如果有些网站的数据属于机密数据,并且这些网站也已经采取种种措施来防止非法访问,但是你非要越过层层限制去访问这些数据,这就涉嫌触犯法律了,因此,爬虫也要适可而止。

最新文章
香港这么乱!从法律角度看,武警部队能否前往维持秩序?
众所周知,近几个月来,香港地区爆发了一系列集会游行示威活动。令人遗憾的是,这些活动已经不断向着暴力恐怖的方向发展。对此,
网贷自由还款怎么操作
小编导语在现代社会中,网络贷款(网贷)已成为越来越多人的融资选择。无论是为了应急消费、购置大件物品,还是进行投资,网贷都
河南纠正不良叛逆行为的矫正学校排名名单出炉
沉迷游戏对孩子有什么坏处1、学习成绩下降孩子沉迷游戏之后,把大部分的精力全都放到了游戏上,根本就无心学习,甚至连老师布置
莱卡水印相机(小米11莱卡水印相机)
1、小米12sp能不能关掉莱卡滤镜2、华为mate9怎么使用水印相机3、徕卡水印苹果快捷指令4、怎样保留徕卡去掉型号5、小米莱卡水印相
Python爬虫 | 如何用Python爬虫一天内收集数百万条数据?
你是否遇到过需要收集大量数据的问题?比如需要分析市场趋势,或者是想要了解某个领域的发展动态。手动收集这些数据
若曦神吐槽第七期:经典服的那些事儿
  玩御龙在天的朋友最近急了,为嘛?经典服要出来了呗!骨灰级屌丝都急着讨要激活码,到处找工会找靠山,妹子们也没闲住,到处去
自己动手做简易搜索引擎
洛阳师范学院 信息技术学院杨浩瑞2013年11月18日记
推荐RAV4荣放紧凑型suv购车指南 关键是合资
外观:2020款丰田rav4外观设计上有一些变化,前中网和车标采用了新的设计,看起来要更加的精致一些。车身尺寸为4600×1855×1680
虾皮卖家开店流程指南
Shopee虾皮卖家开店流程一、准备资料1. 营业执照:个体工商户或企业营业执照,注意必须提交近3个月内的有效证件。2. 法定代表人
最新华为手机型号及报价一览表
随着科技的不断进步,智能手机已成为我们日常生活中不可或缺的一部分。华为作为全球知名的通信和智能设备制造商,其推出的手机产