您当前的位置: 首页 >  Python

Python爬虫:pyquery模块解析网页

彭世瑜 发布时间:2018-04-29 20:16:33 ,浏览量:2

官方文档:https://pythonhosted.org/pyquery/index.html CSS 选择器参考手: http://www.w3school.com.cn/cssref/css_selectors.asp

pyquery可以解析网页

pyquery: a jquery-like library for python
代码示例
from pyquery import PyQuery

# 获取网页文档
doc = PyQuery(url="http://www.baidu.com", encoding="utf-8")
print(doc("title"))
# 百度一下,你就知道

html = """


测试的内容


第一个p标签

第二个p标签

第三个p标签

百度图标百度 """ # 通过字符串实例化 doc = PyQuery(html) print(type(doc)) # # 获取元素文本 print(doc("title").text()) # 测试的内容 # 查找元素 body = doc("body") p = body.find("p") print(p) """

第一个p标签

第二个p标签

第三个p标签

""" # 子元素 child = body.children() print(child) """

第一个p标签

第二个p标签

第三个p标签

百度图标百度 """ # 父元素 container = doc("#p2").parent() print(container) """

第一个p标签

第二个p标签

第三个p标签

百度图标百度 """ # 兄弟标签 p = doc(".myp") p3 = p.siblings() print(p3) """

第二个p标签

第一个p标签

百度图标百度 """ # 遍历 ps = doc.find("p").items() for p in ps: print(p) """

第一个p标签

第二个p标签

第三个p标签

""" # 获取属性 a = doc.find("a") print(a.attr("href")) print(a.attr.href) """ http://www.baidu.com http://www.baidu.com """ # 获取html print(a.html()) # 百度图标百度 # DOM操作 # add_class remove_class a.add_class("myclass") print(a) # 百度图标百度 a.remove_class("myclass") print(a) # 百度图标百度 # 获取、赋值attr a.attr("name", "link") print(a) # 百度图标百度 print(a.attr("name")) # link # 设置css a.css("color", "red") print(a) # 百度图标百度 # remove print(a.text()) # 百度图标百度 a.remove("span") print(a.text()) # 百度 # 伪类选择器 p1 = doc("p:first-child") print(p1) #

第一个p标签

p3 = doc("p:last") print(p3) #

第三个p标签

p2 = doc("p:nth-child(2)") print(p2) #

第二个p标签

p2 = doc("p:nth-child(2n)") print(p2) #

第二个p标签

p = doc("p:contains(第三)") print(p) #

第三个p标签

关注
打赏
1688896170
查看更多评论

彭世瑜

暂无认证

  • 2浏览

    0关注

    2727博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文
立即登录/注册

微信扫码登录

0.0498s