改写parse函数

实现功能:

1.获取文章列表页中的文章url并交给scrapy下载后,交给解析函数进行具体字段的解析
2.获取下一页的url并交给scrapy进行下载,下载完成后交给parse

提取一页列表中的文章url

#解析列表页中所有文章的url,遍历出来
def parse(self, response):# 解析列表页中的所有url并交给scrapy下载后进行解析post_urls = response.css('#archive .floated-thumb .post-thumb a::attr(href)').extract()for post_url in post_urls:print(post_url)

调试输出结果

如何让scrapy进行下载

引入request对象

from scrapy.http import Request

修改提取字段类类名为parse_detail,引入parse类进行域名拼接,yield下载

from urllib import parse

    def parse(self, response):#获取文章列表页中的文章url并交给解析函数进行具体字段的解析#获取下一页的url并交给scrapy进行下载,下载完成后交给parsepost_urls = response.css('#archive .floated-thumb .post-thumb a::attr(href)').extract()for post_url in  post_urls:#yield Request(url=post_url,callback=self.parse_detail)yield Request(url=parse.urljoin(response.url, post_url),callback=self.parse_detail) #域名拼接 下载 下载完成后调用parse_detail解析字段

获取下一页并交给scrapy进行下载

        #提取下一页并交给scrapy下载next_url = response.css('.next.page-numbers::attr(href)').extract_first("")#空格去掉表示同时拥有两个属性if next_url:yield Request(url=parse.urljoin(response.url, next_url), callback=self.parse)  #继续调用parse解析出列表页中具体文章的url

调试前修改start_url为all-posts

调试结果

转载于:https://www.cnblogs.com/coolwinds/p/7450338.html

step5: 编写spider爬取相关推荐

  1. python编写爬虫爬取先知社区文章

    python编写爬虫爬取先知社区文章的标题.标题链接.作者.作者链接.文章分类.发布时间.评论数(O(∩_∩)O哈哈~初级小白,暂时没用正则表达式) import requests '''爬取全部'' ...

  2. [Python 爬虫] 使用 Scrapy 爬取新浪微博用户信息(二) —— 编写一个基本的 Spider 爬取微博用户信息

    上一篇:[Python 爬虫] 使用 Scrapy 爬取新浪微博用户信息(一) -- 新建爬虫项目 在上一篇我们新建了一个 sina_scrapy 的项目,这一节我们开始正式编写爬虫的代码. 选择目标 ...

  3. 【Grades Crawler】利用python编写爬虫 爬取西电教务处成绩并本地保存

    Grades Crawler 项目介绍 由于教务处成绩不易自己打印,故编写爬虫Grades Crawler, 其可以将自己的(需要合法的学生帐号信息)教务处成绩爬取下来,并本地保存为excel格式或直 ...

  4. Python Spider: 爬取项目外包网站TaskCity

    对于想要做软件外包的小伙伴们来说,每天登陆外包网站,并且搜索合适的项目,是很累人并且十分枯燥的事情.使用Python爬虫,可以自动对外包网站上面最新的软件外包项目进行搜索.提取和保存.可以大大提高大家 ...

  5. Python spider爬取高清电影

          最近无聊想刷几部电影,可是去下载的时候发现网页浏览太麻烦了,要一个一个点开看.其实大多数时候我们看一眼名字和主演就可知道要不要看了.索性写了一个爬虫,爬了200多部电影和下载地址,话不多说 ...

  6. scrapy框架 crawl spider 爬取.gif图片

    创建项目: scrapy startproject qiumeimei 建立爬虫应用: scrapy genspider -t crawl meimei www.qiumeimei.com 爬虫文件 ...

  7. 利用python编写爬虫程序,从招聘网站上爬取数据,将数据存入到MongoDB数据库中,将存入的数据作一定的数据清洗后做数据分析,最后将分析的结果做数据可视化

    教程演示 创建爬虫项目 编写需要爬取的字段(items.py) 编写spider文件(wuyou.py) 编写数据库连接(pipelines.py) 编写反爬措施(settings.py) Mongo ...

  8. 如何用 Python + Scrapy 爬取视频?

    今天将带大家简单了解Scrapy爬虫框架,并用一个真实案例来演示代码的编写和爬取过程. 一.scrapy简介 1. 什么是Scrapy Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框 ...

  9. Scrapy-redis实现分布式爬取的过程与原理

    Scrapy是一个比较好用的Python爬虫框架,你只需要编写几个组件就可以实现网页数据的爬取.但是当我们要爬取的页面非常多的时候,单个主机的处理能力就不能满足我们的需求了(无论是处理速度还是网络请求 ...

  10. python爬虫爬取补天公益SRC厂商

    00X0 前言 补天漏洞响应平台在七月份开始了新的活动,指定范围为公益SRC.无HACK 不兄弟 现在都八月份了,七月不刷洞八月方便面啊.趁着月初,赶紧把公益SRC的域名全部爬下来 01X0 准备活动 ...

最新文章

  1. TNS-01201: Listener cannot find executable /u01/oracle/bin/extproc for SID orcl Listener failed to
  2. 移动H5前端性能优化指南[转]
  3. JavaScript typeof() 这个函数是干什么用的?有几个参数,每个参数代表什么?
  4. 【Qt开发】编译时报undefined reference to问题的解决方案
  5. OpenCV+Qt+CMake安装+十种踩坑
  6. mysql怎样修改my ini_mysql通过修改my.ini设置系统变量
  7. 三、HDFS中的Java和Python API接口连接
  8. DP为王——动态规划法学习笔记
  9. 基于visual Studio2013解决C语言竞赛题之0705矩阵转置
  10. Oracle 存储过程调用语句
  11. 100_1小记ressons analysis
  12. ServletContextListener的用法
  13. USB接口IC读写器oem软件_AB密码完整解决方案/读写卡测试程序及源代码/c++builder源代码(2)
  14. 毕业论文系列-公式编号-等号对齐及编号
  15. 掌握这4个Word小技巧, 助您论文排版事半功倍~
  16. 洛谷 P5322 [BJOI2019]排兵布阵
  17. 凹凸技术揭秘·羚珑页面可视化·成长蜕变之路
  18. Python爬取当当网APP数据
  19. 专业程序设计part2
  20. mysql内部联结_MySQL联结表

热门文章

  1. Carplay车载语音通讯测试(Vehicle Communication Terminals Test)
  2. 银河麒麟系统PDF转Word
  3. UINO优锘:数字孪生助力运维工程场景化可视化管理
  4. 2015款java 650b duina_整车推荐:9款5000元级别热销山地车
  5. djyvp计算机电缆参数,DJYVP计算机电缆2x2x1.5型号规格含义
  6. python如何进行数据挖掘_如何使用python实现文本数据挖掘?
  7. 数据结构银行排队系统c语言,数据结构银行排队系统实验报告
  8. 【QT】FillRect填充的区域实现部分区域透明
  9. 什么叫51单片机最小系统
  10. 音乐迷(无损音乐下载器)