Python pyquery库解析html网页

pyquery 类似于python版的jquery,以jquery风格解析html:


部分方法,代码如下:


from pyquery import PyQuery

# 可加载html的字符串,或html文件,或url地址
"""
用法:
    PyQuery("<html><title>hello</title></html>")
    PyQuery(filename=html_file)
    PyQuery(url='http://www.baidu.com')
"""
pq = PyQuery(url='https://news.baidu.com/guonei')

# 获取到的元素不只一个时,html()、text()方法只返回首个元素的相应内容块

# 根据类名、id名得到指定元素
# print pq('ul').filter('.ulist').html()


# 直接根据类名、id名获取元素
# print pq('#col_focus').html()


# attr获取属性值
# print pq('a').eq(0).attr('href')


# 只打印第一个p的
# print pq('p').html()


# find查找元素
# 打印在div中找到的第一个ul
# print pq('div').find('ul').eq(0).html()


# 返回父元素
# print pq('.ulist').parent('div')
# print pq('.ulist').parents('div')


# 子元素
# print pq('.ulist').children()


# 遍历一层后,会返回到上一层,会打印出ul及子元素
# print pq('ul.ulist').find('li').end()


# 清空
# pq('.ulist').find('li').empty()


# 打印所有ulist类下的a标签,下的文本及href值
lista = pq('.ulist a')
print len(lista)
for a in lista.items():
    print a.text(), a.attr('href')

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值