pyquery 提取网页内容

from pyquery import PyQuery

html = '''

    hello

'''
p = PyQuery(html)
  • html():获取相应的 HTML 块
p('head').html()
>>> hello
  • text():获取文本块
p('head').text()
>>> 'hello'




根据 HTML 标签来获取元素
from pyquery import PyQuery

html = '''

test 1

test 2

''' p = PyQuery(html)
# 获取所有p标签
p('p')
>>> [

,

] print(p('p')) >>>

test 1

test 2

  • eq: 根据给定的索引号得到指定元素
# 获取第一个p标签的内容
p('p').eq(0).html()
>>> 'test 1'

# 获取第二个p标签的内容
p('p').eq(1).html()
>>> 'test 2'

# 不用 eq 方法默认返回第一个
p('p').html()
>>> 'test 1'




根据类名、id 名得到指定元素
from pyquery import PyQuery

html = '''

test 1

test 2

''' p = PyQuery(html)
  • filter():选择器
# 返回 id='1' 的p标签内容
p('p').filter('#1').html()
>>> 'test 1'

# 返回 class='abc'  的p标签内容
p('p').filter('.abc').html()
>>> 'test 2'




查找嵌套元素
from pyquery import PyQuery

html = '''

test 1

test 2

''' p = PyQuery(html)
  • find()
# 查找div下的p标签
>>> p('div').find('p')
[, ]

# 返回div下的第一个p标签内容
p('div').find('p').eq(0).html()
>>> 'test 1'




根据类名、id 名获取元素
from pyquery import PyQuery

html = '''

test 1

test 2

''' p = PyQuery(html)
# 根据id名获取元素
p('#1').html()
>>> 'test 1'

# 根据class名获取元素
>>> p('.abc').html()
'test 2'




获取属性值
from pyquery import PyQuery

html = '''

hello

''' p = PyQuery(html)
  • attr()
# 获取a标签的href属性
p('a').attr('href')
>>> 'http://hello.com'




获取子元素
from pyquery import PyQuery

html = '''

    

hello

world

''' p = PyQuery(html)
  • children()
# 提取div的所有子元素
p.children()
>>> [, ]

# 提取div下id=‘1’的子元素
p.children('#1')
>>> []




获取父元素
from pyquery import PyQuery

html = '''

    

hello

world

''' p = PyQuery(html)
  • parents()
# 提取p标签的父元素
p('p').parents()
>>> []

你可能感兴趣的:(pyquery 提取网页内容)