Python scrapy基础教程(二)
来源:互联网 发布:波士顿矩阵分析案例ppt 编辑:程序博客网 时间:2024/06/05 07:00
爬取一般网站常用的spider。其定义了一些规则(rule)来提供跟进link的方便的机制。 也许该spider并不是完全适合您的特定网站或项目。因此您可以以其为起点,根据需求修改部分方法。当然您也可以实现自己的spider。
也就是说spider是根据spider里面的start_urls的url进行爬虫的。但有时候我们爬取的url是带有参数,或者需要登录了网站才能爬取数据的时候,这时候spider虽然能做到,但显得有点乏力。
spider做法:直接看官方文档
for url in response.xpath('//a/@href').extract(): yield scrapy.Request(url, callback=self.parse)
实现方法就是通过start_urls获取全部链接,然后用循环实现,但是遇到不同的链接,网页内容肯定不一样的,这时候就要做很多的判断。这样代码显得臃肿。
CrawlSpider可以根据个人要求做到这个需求,说的白点就是,CrawlSpider就是灵活性高,可以任性一点。但CrawlSpider不会爬取start_urls这个链接的内容,只会根据rules筛选start_urls里面的url,然后爬取这些url的内容
用法:根据上一教程,这里只需修改spiders文件夹下的py文件,这里我新增一个py文件,用于区别上一教程的
其他文件无需修改。
代码
A:导入包
B:设置rules内容,allow是设置start_urls这个网页里面符合条件的链接,deny是排除start_urls这个网页含有条件的链接
C:callback就是指定的方法。
这段代码就是查找start_urls这个网页带有shop而且不含有fr这个链接。
运行结果:
代码下载
扩展:Scrapy模拟登录
欢迎加入学习交流QQ群:657341423
- Python scrapy基础教程(二)
- Python scrapy基础教程(一)
- Python scrapy基础教程(三)
- Python基础教程(二)
- Python基础教程(二)
- 【python】【scrapy】使用方法概要(二)
- python 爬虫学习二(Scrapy讲解)
- Python 基础教程(二)
- (二)python 基础教程
- 简明Python基础教程二
- python基础教程学习笔记二
- python使用scrapy爬取qq音乐(二)
- 玩转Python-Scrapy(二):Spider爬虫类
- scrapy-redis(二)
- scrapy(二)
- 《Python基础教程(第2版)》学习笔记(二):
- Python Django基础教程(二)(模板templatetags)
- Python基础教程(二):基础语法、变量类型
- 9.ClassCastException: com.sun.proxy.$Proxy24 cannot be cast to com.rchange.service.SysUser
- C语言进阶:整型提升
- ROS学习笔记(三):在ROS中使用USB网络摄像头传输图像
- 二叉树的所有路径-LintCode
- Qt 实现实时系统时间显示
- Python scrapy基础教程(二)
- CentOS7下安装MySQL5.7安装与配置(YUM)
- ionic2下拉刷新和上拉加载
- Hibernate学习笔记之关联关系
- spring boot开发项目,部署到tomcat,启动报错
- 使用Lock和Condition实现生产者消费者模型
- 拓扑排序模板题-确定比赛名次 HDU
- RHEL 7.2 安装 oracle
- 《Effective C++》再次探索traits技法