关于scrapy入门级代码tutorial示例代码无法获得item的原因
2016-11-05 01:29
441 查看
"http://www.dmoz.org/Computers/Programming/Languages/Python/Books/",
"http://www.dmoz.org/Computers/Programming/Languages/Python/Resources/"
这两个网站结构已经改变了,不再是ul/li的格式
网上流传的dmoz_spider.py代码为:
改变后dmoz_spider.py的代码为,items.py文件不变:
item['desc']=site.xpath('div/text()').extract() items.append(item) return items
编辑日期:2016年11月5日02:14:05
"http://www.dmoz.org/Computers/Programming/Languages/Python/Resources/"
这两个网站结构已经改变了,不再是ul/li的格式
网上流传的dmoz_spider.py代码为:
from scrapy.spider import Spider from scrapy.selector import Selector from tutorial.items import DmozItem class DmozSpider(Spider): name = "dmoz" allowed_domains = ["dmoz.org"] start_urls = [ "http://www.dmoz.org/Computers/Programming/Languages/Python/Books/", "http://www.dmoz.org/Computers/Programming/Languages/Python/Resources/" ] def parse(self, response): sel = Selector(response) sites = sel.xpath('//ul[@class="directory-url"]/li') items = [] for site in sites: item = DmozItem() item['title'] = site.xpath('a/text()').extract() item['link'] = site.xpath('a/@href').extract() item['desc'] = site.xpath('text()').extract() items.append(item) return items
改变后dmoz_spider.py的代码为,items.py文件不变:
from scrapy.spider import Spider from scrapy.selector import Selector from tutorial.items import DmozItem class DmozSpider(Spider): name = "dmoz" allowed_domains = ["dmoz.org"] start_urls = [ <pre name="code" class="python"> "http://www.dmoz.org/Computers/Programming/Languages/Python/Books/", "http://www.dmoz.org/Computers/Programming/Languages/Python/Resources/"] def parse(self, response): sel = Selector(response) sites = sel.xpath('//div[@class="title-and-desc"]') items = [] for site in sites: item = DmozItem() item['title'] = site.xpath('a/div[@class="site-title"]/text()').extract() item['link']=site.xpath('a/@href').extract()
item['desc']=site.xpath('div/text()').extract() items.append(item) return items
编辑日期:2016年11月5日02:14:05
相关文章推荐
- 关于qt的QGraphicsPathItem无法获得鼠标事件的解决方法
- 关于linux下无法用gcc编译c++代码的原因
- Ajax入门示例完整代码
- 爬虫框架Scrapy的第一个爬虫示例入门教程
- iOS 3D Touch超详细入门介绍(附带demo示例代码)
- 关于用DataTable.Select()方法出现“无法在 System.String 和 System.Int32 上执行“=”操作。”错误的原因
- 0907期《程序员》架构栏目文章《关于大规模系统缓存设计的一些考虑(上)》示例代码
- Mybatis 入门示例代码之 Association
- mysql官方关于2013和2006错误代码产生原因和解决方案
- Storm 从入门到精通 第十五讲 Storm Word Count 示例代码
- Scrapy爬虫入门系列2 示例教程
- ExpandableListView中自定义的childitem无法点击原因总结
- 关于PL\SQL无法在64位Client下使用的原因及解决办法
- 关于Nehe‘s OpenGL tutorial on Win32 Multisampling Application Creation的一些代码分析。
- 关于数据库还原时出现的因为数据库正在使用,所以无法获得对数据库的独占访问权“的解决方案
- 关于CS1.6无法在局域网内搜索其他好友房间的原因
- android ItemTouchHelper实现可拖拽和侧滑的列表的示例代码
- Scrapy爬虫入门教程三 命令行工具介绍和示例
- 关于gsoap工具soapcpp2.exe无法通过头文件生成wsdl接口描述语言文件的原因