PyQuery数据解析

发布时间 2023-04-12 16:30:09作者: 同淋雪

PyQuery数据解析

1、导入

from pyquery import PyQuery

2、创建PyQuery对象

p = PyQuery("页面源代码")

3、定位

# 用法
a = p("css选择器")

a = p("a")  # 选择a标签

a = p("li")("a")  # 选择li下的a标签

a = p(".aaa a")  #  选择class="aaa"的a标签

a = p("#qq a")  # 选择id="qq"的a标签

4、取值

href = p("#qq a").attr("href")  # 取属性href的值

text = p("#qq a").text() # 取文本

# eq(0)表示在已经提取的内容中取第一个
# nth-child(1)表示在css选择时,取第一个位置的内容
chexing = p("div > dl:nth-child(1) > dd").eq(0).text()  

:如果多个标签同时取属性,只能默认拿到第一个。

5、多个标签取值

it = p("li a").items()  # 生成器
for item in it:
    href = item.attr("href")
    text = item。text()

:p("#qq a").text()是支取文本内容,p("#qq a").html()是取所有内容

6、修改HTML结构

doc = PyQuery("页面源代码")
doc(".aaa").after("""<div class="ccc">你好</div>""")  # 在后面插入HTML代码片段
doc(".aaa").append("""<div class="ccc">你好</div>""")  # 向HTML内层标签中插入HTML片段
doc(".aaa").html("""<div class="ccc">你好</div>""")  # 修改标签内的html代码
doc(".aaa").text("hello")  # 修改文本内容
doc(".aaa").attr("cs","test")  # 添加属性
doc(".aaa").remove_attr("cs")  # 删除属性