• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • vbs
  • DOS/BAT
  • hta/htc
  • python
  • perl
  • VBA
  • ColdFusion
  • ruby
  • PowerShell
  • Lua
  • Golang
  • linux shell
您的位置:首页 > 脚本语言 >python > Python HTMLParser模块解析html获取url实例

Python HTMLParser模块解析html获取url实例

作者:junjie 字体:[增加 减小] 来源:互联网

junjie 通过本文主要向大家介绍了python htmlparser,python3 htmlparser,python中的htmlparser,htmlparser,htmlparser.jar下载等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

HTMLParser是python用来解析html的模块。它可以分析出html里面的标签、数据等等,是一种处理html的简便途径。HTMLParser采用的是一种事件驱动的模式,当HTMLParser找到一个特定的标记时,它会去调用一个用户定义的函数,以此来通知程序处理。它主要的用户回调函数的命名都是以handler_开头的,都是HTMLParser的成员函数。当我们使用时,就从HTMLParser派生出新的类,然后重新定义这几个以handler_开头的函数即可。这几个函数包括:

handle_startendtag  处理开始标签和结束标签
handle_starttag     处理开始标签,比如<xx>
handle_endtag       处理结束标签,比如</xx>
handle_charref      处理特殊字符串,就是以&#开头的,一般是内码表示的字符
handle_entityref    处理一些特殊字符,以&开头的,比如  
handle_data         处理数据,就是<xx>data</xx>中间的那些数据
handle_comment      处理注释
handle_decl         处理<!开头的,比如<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
handle_pi           处理形如<?instruction>的东西

这里我以从网页中获取到url为例,介绍一下。要想获取到url,肯定是要分析<a>标签,然后取到它的href属性的值。下面是代码:

#-*- encoding: gb2312 -*-
import HTMLParser

class MyParser(HTMLParser.HTMLParser):
  def __init__(self):
    HTMLParser.HTMLParser.__init__(self)    
    
  def handle_starttag(self, tag, attrs):
    # 这里重新定义了处理开始标签的函数
    if tag == 'a':
      # 判断标签<a>的属性
      for name,value in attrs:
        if name == 'href':
          print value
    

if __name__ == '__main__':
  a = '<html><head><title>test</title><body><a href="http://www.163.com">链接到163</a></body></html>'
  
  my = MyParser()
  # 传入要分析的数据,是html的。
  my.feed(a)

</div> </div>

您可能想查找下面的文章:

  • Python HTMLParser模块解析html获取url实例
  • Python HTMLParser模块解析html获取url实例
  • Python中使用HTMLParser解析html实例

相关文章

  • Python 抓取动态网页内容方案详解
  • 详解Django中的过滤器
  • python计算圆周率pi的方法
  • Python实现控制台进度条功能
  • python使用urllib2模块获取gravatar头像实例
  • Python模仿POST提交HTTP数据及使用Cookie值的方法
  • pygame播放音乐的方法
  • Windows下Eclipse+PyDev配置Python+PyQt4开发环境
  • Python中的sort()方法使用基础教程
  • Python用list或dict字段模式读取文件的方法

文章分类

  • vbs
  • DOS/BAT
  • hta/htc
  • python
  • perl
  • VBA
  • ColdFusion
  • ruby
  • PowerShell
  • Lua
  • Golang
  • linux shell

最近更新的内容

    • Python正则表达式教程之二:捕获篇
    • python判断图片宽度和高度后删除图片的方法
    • 利用python获得时间的实例说明
    • 在windows系统中实现python3安装lxml
    • Python的print用法示例
    • 搭建Python的Django框架环境并建立和运行第一个App的教程
    • 在Python中使用列表生成式的教程
    • Python实现给qq邮箱发送邮件的方法
    • Python中正则表达式的详细教程
    • 介绍Python中几个常用的类方法

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有