Python使用scrapy抓取网站sitemap信息的方法


Posted in Python onApril 08, 2015

本文实例讲述了Python使用scrapy抓取网站sitemap信息的方法。分享给大家供大家参考。具体如下:

import re
from scrapy.spider import BaseSpider
from scrapy import log
from scrapy.utils.response import body_or_str
from scrapy.http import Request
from scrapy.selector import HtmlXPathSelector
class SitemapSpider(BaseSpider):
 name = "SitemapSpider"
 start_urls = ["http://www.domain.com/sitemap.xml"]
 def parse(self, response):
  nodename = 'loc'
  text = body_or_str(response)
  r = re.compile(r"(<%s[\s>])(.*?)(</%s>)"%(nodename,nodename),re.DOTALL)
  for match in r.finditer(text):
   url = match.group(2)
   yield Request(url, callback=self.parse_page)
 def parse_page(self, response):
    hxs = HtmlXPathSelector(response)
    #Mock Item
  blah = Item()
  #Do all your page parsing and selecting the elemtents you want
    blash.divText = hxs.select('//div/text()').extract()[0]
  yield blah

希望本文所述对大家的Python程序设计有所帮助。

Python 相关文章推荐
python读取json文件并将数据插入到mongodb的方法
Mar 23 Python
python关闭windows进程的方法
Apr 18 Python
Python实现的数据结构与算法之快速排序详解
Apr 22 Python
python自动裁剪图像代码分享
Nov 25 Python
Python实现多进程的四种方式
Feb 22 Python
Python实现截取PDF文件中的几页代码实例
Mar 11 Python
python的debug实用工具 pdb详解
Jul 12 Python
Python中logging日志库实例详解
Feb 19 Python
Python range与enumerate函数区别解析
Feb 28 Python
使用tensorflow根据输入更改tensor shape
Jun 23 Python
python自动化办公操作PPT的实现
Feb 05 Python
jupyter notebook保存文件默认路径更改方法汇总(亲测可以)
Jun 09 Python
Python中用format函数格式化字符串的用法
Apr 08 #Python
简单介绍Python中的JSON模块
Apr 08 #Python
Python实现把xml或xsl转换为html格式
Apr 08 #Python
Python正则表达式匹配HTML页面编码
Apr 08 #Python
在Python中关于中文编码问题的处理建议
Apr 08 #Python
Python脚本实现格式化css文件
Apr 08 #Python
Python实现获取操作系统版本信息方法
Apr 08 #Python
You might like
查找php配置文件php.ini所在路径的二种方法
2014/05/26 PHP
php 使用array函数实现分页
2015/02/13 PHP
PHP面向对象之工作单元(实例讲解)
2017/06/26 PHP
PHP按一定比例压缩图片的方法
2018/10/12 PHP
XHTML-Strict 内允许出现的标签
2006/12/11 Javascript
imgAreaSelect 中文文档帮助说明
2011/10/08 Javascript
javascript 表格内容排序 简单操作示例代码
2014/01/03 Javascript
JS清除选择内容的方法
2015/01/29 Javascript
javascript实现网页端解压并查看zip文件
2015/12/15 Javascript
jQuery+ajax实现滚动到页面底部自动加载图文列表效果(类似图片懒加载)
2016/06/07 Javascript
Bootstrap中的Panel和Table全面解析
2016/06/13 Javascript
vue2.0开发实践总结之疑难篇
2016/12/07 Javascript
原生js封装运动框架的示例讲解
2017/10/01 Javascript
jQuery 实现批量提交表格多行数据的方法
2018/08/09 jQuery
微信小程序 扭蛋抽奖机css3动画实现详解
2019/07/19 Javascript
JavaScript Event Loop相关原理解析
2020/06/10 Javascript
Angular+ionic实现折叠展开效果的示例代码
2020/07/29 Javascript
[58:25]VP vs RNG 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/17 DOTA
以911新闻为例演示Python实现数据可视化的教程
2015/04/23 Python
Python入门教程之if语句的用法
2015/05/14 Python
详谈python3中用for循环删除列表中元素的坑
2018/04/19 Python
Python 实现中值滤波、均值滤波的方法
2019/01/09 Python
Python流程控制 while循环实现解析
2019/09/02 Python
python实现按关键字筛选日志文件
2019/12/24 Python
基于pandas向csv添加新的行和列
2020/05/25 Python
美国婴儿用品店:Babies”R”Us
2017/10/12 全球购物
法国二手MacBook销售网站:Okamac
2019/03/18 全球购物
俄罗斯在线手表和珠宝商店:AllTime
2019/09/28 全球购物
小学生安全保证书
2014/02/01 职场文书
小学教师自我鉴定范文
2014/03/20 职场文书
图书室标语
2014/06/21 职场文书
我们的节日春节活动方案
2014/08/22 职场文书
2014年预备党员群众路线教育实践活动对照检查材料思想汇报
2014/10/02 职场文书
2014年高一班主任工作总结
2014/12/05 职场文书
围城读书笔记
2015/06/26 职场文书
三严三实·严以修身心得体会
2016/01/15 职场文书