前面写了学习CrawlSpider遇到的问题后,今天学XMLFeedSpider又出现了启动后没爬取到数据,但又不报错的情况

经过排查,发现又是一个粗心大意的错误:

class SpiderUserXMLFeedSpider(XMLFeedSpider):

   name = 'xmlspider'
allowed_domains=['cnblogs.com']#这里敲少了一个s
start_urls=['http://feed.cnblogs.com/blog/u/269038/rss']
iterator = 'html'
itertag = 'entry' 另外记录一下,这种结构:
<entry>
<id>http://www.cnblogs.com/qiyeboy/p/9296038.html</id>
<title type="text">基于HTTPS的中间人攻击-BaseProxy - 七夜的故事</title>
<summary type="text">
前言 在上一篇文章 "BaseProxy:异步http/https代理" 中,我介绍了自己的开源项目BaseProxy,这个项目的初衷其实是为了渗透测试,抓包改包。在 知识星球 中,有很多朋友问我这个项目的原理及实现代码,本篇文章就讲解一下和这个项目相关的HTTPS的中间人攻击。 HTTPS隧道代理
</summary>
<published>2018-07-11T10:16:00Z</published>
<updated>2018-07-11T10:16:00Z</updated>
<author>
<name>七夜的故事</name>
<uri>http://www.cnblogs.com/qiyeboy/</uri>
</author>
<link rel="alternate" href="http://www.cnblogs.com/qiyeboy/p/9296038.html"/>
<link rel="alternate" type="text/html" href="http://www.cnblogs.com/qiyeboy/p/9296038.html"/>
<content type="html">
【摘要】前言 在上一篇文章 "BaseProxy:异步http/https代理" 中,我介绍了自己的开源项目BaseProxy,这个项目的初衷其实是为了渗透测试,抓包改包。在 知识星球 中,有很多朋友问我这个项目的原理及实现代码,本篇文章就讲解一下和这个项目相关的HTTPS的中间人攻击。 HTTPS隧道代理 <a href="http://www.cnblogs.com/qiyeboy/p/9296038.html" target="_blank">阅读全文</a>
</content>
</entry>
 
在匹配数据时,因为设置了起始标签是itertag = 'entry'所以xpath匹配只需这样写:
node.xpath('id/text()').extract()[0]
node.xpath('title/text()').extract()[0]
node.xpath('summary/text()').extract()[0]

不需要在id,title ,summary前面加/

还有在我查这个爬不到数据的问题时,还找到一篇不错的文章:https://blog.csdn.net/lw_power/article/details/77919533
这里讲了使用模板来生成spider的代码,用模板的话就不用所有代码都敲一遍,就设置一下items.py,然后去Spider.py里修改一下allowed_domains ,start_urls的链接,
并补充关键代码(其实自动生成的代码注释有提示你应该怎么写代码)

【Spider】学习使用XMLFeedSpider的更多相关文章

  1. 七月在线爬虫班学习笔记(五)——scrapy spider的几种爬取方式

    第五课主要内容有: Scrapy框架结构,组件及工作方式 单页爬取-julyedu.com 拼URL爬取-博客园 循环下页方式爬取-toscrape.com Scrapy项目相关命令-QQ新闻 1.S ...

  2. python学习之-用scrapy框架来创建爬虫(spider)

    scrapy简单说明 scrapy 为一个框架 框架和第三方库的区别: 库可以直接拿来就用, 框架是用来运行,自动帮助开发人员做很多的事,我们只需要填写逻辑就好 命令: 创建一个 项目 : cd 到需 ...

  3. [Todo] Nodejs学习及Spider实验(包括php入门学习、React入门学习)

    /Users/baidu/Documents/Data/Interview/Web-Server开发 深入浅出Node.js-f46c http://blog.csdn.net/u012273376/ ...

  4. Scrapy框架学习(三)Spider、Downloader Middleware、Spider Middleware、Item Pipeline的用法

    Spider有以下属性: Spider属性 name 爬虫名称,定义Spider名字的字符串,必须是唯一的.常见的命名方法是以爬取网站的域名来命名,比如爬取baidu.com,那就将Spider的名字 ...

  5. Nodejs全站开发学习系列 & 深入浅出Node学习笔记 & Spider抓取

    https://course.tianmaying.com/node 这个系列的文章看起来很不错,值得学习一下. /Users/baidu/Documents/Data/Interview/Web-S ...

  6. Scrapy学习-25-Scrapyd部署spider

    Scrapyd部署爬虫项目 github项目  https://github.com/scrapy/scrapyd    官方文档  http://scrapyd.readthedocs.org/  ...

  7. 学习Spider 了解 Scrapy的流程

    Scrapy 先创建项目 在windows下 scrapy startproject      myproject         #myproject是你的项目名称 cd 项目名称 scrapy g ...

  8. scrapy 4 学习 crawl spider

    前情提要: 一:图片懒加载(面对图片懒加载怎么办) ---用selenium设置图片加载的位置 --- 分析懒加载的属性,直接获取 二: 如何提高scrapy的爬取效率 增加并发:默认scrapy开启 ...

  9. Scrapy学习篇(五)之Spiders

    Spiders Spider类定义了如何爬取某个网站.包括了爬取的动作(例如:是否跟进链接)以及如何从网页的内容中提取结构化数据(爬取item).简而言之,Spider就是你定义爬取的动作及分析某个网 ...

随机推荐

  1. 19.纯 CSS 创作一种有削铁如泥感觉的菜单导航特效

    原文地址:https://segmentfault.com/a/1190000014836748 感想: 把原元素隐藏,利用伪元素::before 和 ::after 各取上下一半 clip-path ...

  2. Python学习笔记_week1

    一.编程语言的分类 编译型和解释型.静态语言和动态语言.强类型定义语言和弱类型定义语言,Python是一门动态解释型的强类型定义语言. Python的优缺点 Python解释器:CPython.IPy ...

  3. 坑爹的myeclipse 的tomcat 重部署 redeploy !

    启动 tomcat 出现: Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bea ...

  4. JVM虚拟机宕机_java.lang.OutOfMemoryError: unable to create new native thread

    原因:当前用户的系统最最大程序数数已达到最大值,使用ulimit -u可以看到是1024   解决办法:在当前用户下使用ulimit -u 65535 然后再执行jsp,一切ok     功能说明:控 ...

  5. js检查字符串的包含关系

    首先想到的是str.contains(),用的时候发现报错了 正确的判断方法应该用:str.indexof(substring),不包含的话,返回-1.大小写敏感 var rsp = response ...

  6. HashMap、LinkedHashMap、ConcurrentHashMap、ArrayList、LinkedList的底层实现

    HashMap:底层是一个数组+链表实现 LinkedHashMap:底层是Hash表和链表的实现 ConcurrentHashMap:基于双数组和链表的Map接口的同步实现 ArrayList:底层 ...

  7. MySQL主从同步机制及同步中的问题处理

    http://www.drupal001.com/2012/03/mysql-master-slave-troubles/ http://www.jb51.net/article/33052.htm

  8. 爬虫--Scrapy-CrawlSpider&基于CrawlSpide的分布式爬虫

    CrawlSpider 提问:如果想要通过爬虫程序去爬取”糗百“全站数据新闻数据的话,有几种实现方法? 方法一:基于Scrapy框架中的Spider的递归爬取进行实现(Request模块递归回调par ...

  9. SpringBoot读取application.properties文件内容

    application.properties存储数据的方式是key-value. application.properties内容 userManager.userFile=data/user.pro ...

  10. 算法练习,链表二分最大n个

    import java.util.ArrayList; import java.util.Collections; import java.util.HashSet; public class Bin ...