您的位置:首页 > 编程语言 > Python开发

Python HTMLParser的使用例子

2009-11-25 15:20 555 查看
#!/usr/bin/env python

import

sys

import

urllib

import

HTMLParser

class

CustomParser

(

HTMLParser

.

HTMLParser

)

:

selected

=

(

'

table

'

,

'

h1

'

,

'

font

'

,

'

ul

'

,

'

li

'

,

'

tr

'

,

'

td

'

,

'

a

'

)

def

reset

(

self

)

:

HTMLParser

.

HTMLParser

.

reset

(

self

)

self

.

_level_stack

=

[]

def

handle_starttag

(

self

,

tag

,

attrs

)

:

if

tag

in

CustomParser

.

selected

:

self

.

_level_stack

.

append

(

tag

)

def

handle_endtag

(

self

,

tag

)

:

if

self

.

_level_stack

/

and

tag

in

CustomParser

.

selected

/

and

tag

==

self

.

_level_stack

[

-

1

]

:

self

.

_level_stack

.

pop

()

def

handle_data

(

self

,

data

)

:

if

"

/

"

.

join

(

self

.

_level_stack

)

in

(

'

table/tr/td

'

,

'

table/tr/td/h1/font

'

,

'

table/tr/td/ul/li

'

)

:

print

self

.

_level_stack

,

data

if

len

(

sys

.

argv

)

>

1

:

params

=

urllib

.

urlencode

(

{

'

ip

'

:

sys

.

argv

[

1

]

,

'

action

'

:

2

}

)

else

:

params

=

None

content

=

unicode

(

urllib

.

urlopen

(

'
http://www.ip138.com/ips8.asp
'

,

params

)

.

read

()

,

'

GB2312

'

)

parser

=

CustomParser

()

parser

.

feed

(

content

)

parser

.

close

()
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: