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 相关文章推荐
Python内置的字符串处理函数整理
Jan 29 Python
python获得两个数组交集、并集、差集的方法
Mar 27 Python
用PyQt进行Python图形界面的程序的开发的入门指引
Apr 14 Python
Nginx搭建HTTPS服务器和强制使用HTTPS访问的方法
Aug 16 Python
解决Pycharm运行时找不到文件的问题
Oct 29 Python
详解Python数据分析--Pandas知识点
Mar 23 Python
python实现五子棋游戏
Jun 18 Python
Python Scrapy框架第一个入门程序示例
Feb 05 Python
彻底搞懂 python 中文乱码问题(深入分析)
Feb 28 Python
python+selenium+Chrome options参数的使用
Mar 18 Python
什么是Python中的匿名函数
Jun 02 Python
Python同时处理多个异常的方法
Jul 28 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
如何在PHP中进行身份认证
2006/10/09 PHP
php file_put_contents()功能函数(集成了fopen、fwrite、fclose)
2011/05/24 PHP
php适配器模式介绍
2012/08/14 PHP
浅谈PHP eval()函数定义和用法
2016/06/21 PHP
PHP数组编码gbk与utf8互相转换的两种方法
2016/09/01 PHP
javascript 数组学习资料收集
2010/04/11 Javascript
JS下高效拼装字符串的几种方法比较与测试代码
2010/04/15 Javascript
原创javascript小游戏实现代码
2010/08/19 Javascript
js获取当前地址 JS获取当前URL的示例代码
2014/02/26 Javascript
jquery实现仿JqueryUi可拖动的DIV实例
2015/07/31 Javascript
JS原生轮播图的简单实现(推荐)
2017/07/22 Javascript
jQuery轻量级表单模型验证插件
2018/10/15 jQuery
React生命周期原理与用法踩坑笔记
2020/04/28 Javascript
electron踩坑之dialog中的callback解决
2020/10/06 Javascript
[46:27]DOTA2上海特级锦标赛主赛事日 - 1 胜者组第一轮#2LGD VS MVP.Phx第一局
2016/03/02 DOTA
深入学习Python中的装饰器使用
2016/06/20 Python
一个基于flask的web应用诞生 flask和mysql相连(4)
2017/04/11 Python
Python实现的手机号归属地相关信息查询功能示例
2017/06/08 Python
解析Python中的eval()、exec()及其相关函数
2017/12/20 Python
pycharm 主题theme设置调整仿sublime的方法
2018/05/23 Python
idea创建springMVC框架和配置小文件的教程图解
2018/09/18 Python
对python的输出和输出格式详解
2018/12/08 Python
python调用函数、类和文件操作简单实例总结
2019/11/29 Python
Python 面向对象部分知识点小结
2020/03/09 Python
美国相机和电子产品零售商:Beach Camera
2020/11/26 全球购物
北美最大的参茸药食商城:德成行
2020/12/06 全球购物
.NET常见笔试题集
2012/12/01 面试题
函授毕业生自我鉴定
2013/11/06 职场文书
教育实习生的自我评价分享
2013/11/21 职场文书
日语专业毕业生求职信
2013/12/04 职场文书
《春天来了》教学反思
2014/04/07 职场文书
小学教育见习报告
2014/10/31 职场文书
个人委托书范文
2015/01/28 职场文书
中学生清明节演讲稿
2015/03/18 职场文书
小学秋季运动会加油口号及加油稿
2019/08/19 职场文书
MySQL锁机制
2021/04/05 MySQL