`

urllister.py源码分析

阅读更多
<script>function StorePage(){d=document;t=d.selection?(d.selection.type!='None'?d.selection.createRange().text:''):(d.getSelection?d.getSelection():'');void(keyit=window.open('http://www.365key.com/storeit.aspx?t='+escape(d.title)+'&u='+escape(d.location.href)+'&c='+escape(t),'keyit','scrollbars=no,width=475,height=575,left=75,top=20,status=no,resizable=yes'));keyit.focus();}</script>

"""Extract list of URLs in a web page

This program is part of "Dive Into Python", a free Python book for
experienced programmers. Visit http://diveintopython.org/ for the
latest version.
"""

__author__ = "Mark Pilgrim (mark@diveintopython.org)"
__version__ = "$Revision: 1.2 $"
__date__ = "$Date: 2004/05/05 21:57:19 $"
__copyright__ = "Copyright (c) 2001 Mark Pilgrim"
__license__ = "Python"

#声明四个字符串,并赋值



from sgmllib import SGMLParser

#导入SGMLParser类

class URLLister(SGMLParser):

#自定义一个新类URLLister


def reset(self):
SGMLParser.reset(self)

#调用SGMLParser的reset方法,重置类实例
self.urls = []

#初始化self的urls变量为空数组

def start_a(self, attrs):
href = [v for k, v in attrs if k=='href']
if href:
self.urls.extend(href)

#若href不为空,将href添加到urls中

if __name__ == "__main__":
import urllib
usock = urllib.urlopen("http://diveintopython.org/")

#调入urllib这个类,打开http://diveintopython.org/这个网址
parser = URLLister()

#获取类URLLister的实例,并赋给parser
parser.feed(usock.read())

#将usock读取的内容“喂给”parser
parser.close()

#关闭parser
usock.close()

#关闭usock
for url in parser.urls: print url

#打印parser的所有元素

分享到:
评论

相关推荐

    10-vn.py 2.2.0源代码深入分析210326.docx

    源码分析从下载、安装和启动主程序入口开始,逐步引导读者了解vn.py的工作流程。这包括解析配置文件、初始化各种模块和服务,以及启动GUI界面。 在vn.py中,CTA(策略交易分析)回测是一个关键的应用。CTA回测允许...

    vn.py 2.0.7代码分析入门.docx

    首先,要开始vn.py的源代码分析,你需要从官方主页下载源码,目前vn.py的最新版本是2.0.7。在Windows环境下,你可以通过GitHub或码云下载ZIP文件。注意,由于vn.py 2.0.7要求Python 3.7以上的版本,所以确保你的...

    基于Python的vn.py开源量化交易框架源码

    vn.py是一个基于Python的开源量化交易框架,旨在为开发者提供一套完整的系统以构建专业的量化交易解决方案。该项目包含133个文件,主要采用Python语言编写,并辅以HTML、Shell和CSS等多种语言,以丰富其功能与界面...

    python-web.py包

    首先,你需要访问Web.py的官方网站或者通过GitHub等代码托管平台找到web.py的源码压缩包,这里显示的文件名是"webpy-master",这意味着你已经下载了源码的主分支。下载后,将其解压缩到本地的一个目录,例如`C:\temp...

    bootchart python draw.py parsing.py samples.py

    标题中的"bootchart python draw.py parsing.py samples.py"提到了几个关键元素,它们分别是bootchart、python以及三个Python脚本文件:draw.py、parsing.py和samples.py。这些元素涉及到了Android系统的性能测试和...

    YOLOv5s 6.1版本detect.py源码解读源文件

    YOLOv5s 6.1版本detect.py源码解读源文件

    word2vec_basic.py源码下载

    Tensorflow 中文社区字词的向量表示的 word2vec_basic.py 源码下载

    web.py 中文手册

    web.py 中文手册 webpy coobookweb.py 中文手册 webpy coobookweb.py 中文手册 webpy coobookweb.py 中文手册 webpy coobookweb.py 中文手册 webpy coobookweb.py 中文手册 webpy coobookweb.py 中文手册 webpy ...

    web.py中文版用户手册

    web.py 是一个轻量级Python web框架,它简单而且功能强大。web.py是一个开源项目。该框架由美国作家、Reddit联合创始人、RSS规格合作创造者、著名计算机黑客Aaron Swartz开发。web.py目前已被很多家大型网站所使用。

    python2.7中所用的get-pip.py文件+安装方法

    `get-pip.py`是一个Python脚本,它的主要作用是为没有预装`pip`的Python环境安装`pip`。在Python 2.7中,由于某些系统可能没有默认提供`pip`,或者`pip`版本过低,`get-pip.py`就显得非常有用。这个脚本可以下载并...

    python_docx-0.8.10-py2.py3-none-any.whl

    估计这个安装包还只兼容python 2(python2 和python3差别还是挺大的,虽然现在python 3出来很久了,但是不少三方库还没有更新),因此需要自己找一个兼容的包:python_docx-0.8.6-py2.py3-none-any.whl。然后在...

    yolo8 找不到的setup.py

    yolo8 找不到的setup.py

    python源码math.py

    python源码,math.py,math.nan acos acosh asin asinh atan atan2 ceil

    pyinstxtractor_反编译.py

    如果python程序通过pyinstall打包为exe,可以通过cmd执行命令:python pyinstxtractor.py file_name.exe 解析并翻译python源码

    CiscoIOUKeygen.py

    EVE内思科IOU的key . CiscoIOUKeygen.py CiscoIOUKeygen.py

    Python 在PyCharm开发工具中配置.qrc文件转换.py文件的快捷工具 Python源码

    Python 在PyCharm开发工具中配置.qrc文件转换.py文件的快捷工具 Python源码Python 在PyCharm开发工具中配置.qrc文件转换.py文件的快捷工具 Python源码Python 在PyCharm开发工具中配置.qrc文件转换.py文件的快捷工具 ...

    input_data.py

    input_data.py 下载用于训练和测试的MNIST数据集的源码 input_data.py 下载用于训练和测试的MNIST数据集的源码

    pyinstxtractor.py (改进) - 反编译pyinstaller生成exe的工具

    改进后的pyinstxtractor.py, 适合还原pyinstaller生成的exe,从exe中提取代码。 本文件已经过多次bug修复, 支持各个不同的python版本。 使用说明: 将需提取的exe文件拖入pyinstxtractor.py, 执行成功后, 会生成一个...

    HTMLTestReportCn.py (适用于 unittest 测试框架的第三方组件)

    HTMLTestReportCn.py (适用于 unittest 测试框架的第三方组件)

    python-base.py: 千行代码入门Python python-visual.py: 15张图入门Matplotlib

    python_lda.py: 玩点高级的--带你入门Topic模型LDA(小改进+附源码) python_sqlalchemy.py: 作为一个Pythoner, 不会SQLAlchemy都不好意思跟同行打招呼! python_oneline.py: 几个小例子告诉你, 一行Python代码能干...

Global site tag (gtag.js) - Google Analytics