Python打印scrapy蜘蛛抓取树结构的方法


Posted in Python onApril 08, 2015

本文实例讲述了Python打印scrapy蜘蛛抓取树结构的方法。分享给大家供大家参考。具体如下:

通过下面这段代码可以一目了然的知道scrapy的抓取页面结构,调用也非常简单

#!/usr/bin/env python
import fileinput, re
from collections import defaultdict
def print_urls(allurls, referer, indent=0):
  urls = allurls[referer]
  for url in urls:
    print ' '*indent + referer
    if url in allurls:
      print_urls(allurls, url, indent+2)
def main():
  log_re = re.compile(r'<GET (.*?)> \(referer: (.*?)\)')
  allurls = defaultdict(list)
  for l in fileinput.input():
    m = log_re.search(l)
    if m:
      url, ref = m.groups()
      allurls[ref] += [url]
  print_urls(allurls, 'None')
main()

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

Python 相关文章推荐
Django框架中方法的访问和查找
Jul 15 Python
Python ftp上传文件
Feb 13 Python
Python实现批量检测HTTP服务的状态
Oct 27 Python
使用Python的turtle模块画图的方法
Nov 15 Python
Numpy数组转置的两种实现方法
Apr 17 Python
对Python 2.7 pandas 中的read_excel详解
May 04 Python
centos+nginx+uwsgi+Django实现IP+port访问服务器
Nov 15 Python
如何基于Python实现电子邮件的发送
Dec 16 Python
Pytorch 实现数据集自定义读取
Jan 18 Python
Python OpenCV读取显示视频的方法示例
Feb 20 Python
python 中的9个实用技巧,助你提高开发效率
Aug 30 Python
python实现批量提取指定文件夹下同类型文件
Apr 05 Python
使用IPython来操作Docker容器的入门指引
Apr 08 #Python
仅用50行Python代码实现一个简单的代理服务器
Apr 08 #Python
用Python实现一个简单的能够发送带附件的邮件程序的教程
Apr 08 #Python
Python 创建子进程模块subprocess详解
Apr 08 #Python
Python中使用gzip模块压缩文件的简单教程
Apr 08 #Python
Python使用scrapy抓取网站sitemap信息的方法
Apr 08 #Python
Python中用format函数格式化字符串的用法
Apr 08 #Python
You might like
Classes and Objects in PHP5-面向对象编程 [1]
2006/10/09 PHP
PHP简单实现记录网站访问量功能示例
2018/06/06 PHP
ThinkPHP框架实现FTP图片上传功能示例
2019/04/08 PHP
不用写JS也能使用EXTJS视频演示
2008/12/29 Javascript
window.parent调用父框架时 ie跟火狐不兼容问题
2009/07/30 Javascript
Mootools 1.2教程 选项卡效果(Tabs)
2009/09/15 Javascript
COM中获取JavaScript数组大小的代码
2009/11/22 Javascript
THREE.JS入门教程(3)着色器-下
2013/01/24 Javascript
漂亮的jquery提示效果(仿腾讯弹出层)
2013/02/05 Javascript
解析DHTML,JavaScript,DOM,BOM以及WEB标准的描述
2013/06/19 Javascript
jquery easyui combox一些实用的小方法
2013/12/25 Javascript
javascript实现单击和双击并存的方法
2014/12/13 Javascript
JavaScript中的console.assert()函数介绍
2014/12/29 Javascript
JQuery基础语法小结
2015/02/27 Javascript
jQuery给动态添加的元素绑定事件的方法
2015/03/09 Javascript
jQuery实现点击小图片淡入淡出显示大图片特效
2015/09/09 Javascript
谈谈Jquery中的children find 的区别有哪些
2015/10/19 Javascript
Javascript简单实现面向对象编程继承实例代码
2015/11/27 Javascript
解决vue-router中的query动态传参问题
2018/03/20 Javascript
Angular使用过滤器uppercase/lowercase实现字母大小写转换功能示例
2018/03/27 Javascript
Express结合Webpack的全栈自动刷新
2019/05/23 Javascript
微信小程序实现轨迹回放的示例代码
2019/12/13 Javascript
Python中的with语句与上下文管理器学习总结
2016/06/28 Python
使用pyecharts无法import Bar的解决方案
2020/04/23 Python
Python使用Tkinter实现滚动抽奖器效果
2020/01/06 Python
python 的topk算法实例
2020/04/02 Python
Python+redis通过限流保护高并发系统
2020/04/15 Python
套娃式文件夹如何通过Python批量处理
2020/08/23 Python
详解pytorch tensor和ndarray转换相关总结
2020/09/03 Python
python中操作文件的模块的方法总结
2021/02/04 Python
英国花园家具中心:Garden Furniture Centre
2017/08/24 全球购物
美国在线眼镜店:GlassesShop
2018/11/15 全球购物
动漫专业高职生职业生涯规划书
2014/02/15 职场文书
锦旗赠语
2015/06/23 职场文书
Python批量将csv文件转化成xml文件的实例
2021/05/10 Python
Redis 异步机制
2022/05/15 Redis