python简单使用xpath查找网页元素

Posted zsjlovewm

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python简单使用xpath查找网页元素相关的知识,希望对你有一定的参考价值。

from lxml import html

def parse():
    """"将html文件中的内容,使用小path进行提取"""
    #读取文件中的内容
    f = open(./venv/static_/index.html,r,encoding = utf-8)
    s = f.read()

    selector = html.fromstring(s)
    #j解析标题
    h3 = selector.xpath(/html/body/h3/text())
    print(h3[0])#这里取到的是个list,我用使用列表获取
    f.close()

    #解析ul里面的内容
    ul = selector.xpath(/html/body/ul/li)
    # ul = selector.xpath(‘//ul/li‘)也可以使用
    print(len(ul))
    for li  in ul:
        print(li.xpath(text())[0])

    #解析tr里面的内容
    # tr = selector.xpath(‘/html/body/form/table/tr/td/text()‘)
    # print(tr)

    #解析ul指定的元素值
    ul2 = selector.xpath(/html/body/ul/li[@class="important"]/text())
    print(ul2)

    #解析ul指定的元素属性
    a = selector.xpath(//div[@id="container"]/a/text())
    print(a[0])

    #href属性
    alink = selector.xpath(//div[@id="container"]/a/@href)
    print(alink[0])

    #解析p标签
    p = selector.xpath(/html/body/p/text())
    # p = selector.xpath(‘/html/body/p[last()]/text()‘) #获取最后一个
    print(len(p))
    print(p[0])

    #使用浏览的xpath生成工具
    test = selector.xpath(/html/body/form/table/tr[1]/th/text())#只能借鉴/html/body/form/table/tbody/tr[1]/th
    print(test[0])


if __name__== __main__:
    parse()

 

以上是关于python简单使用xpath查找网页元素的主要内容,如果未能解决你的问题,请参考以下文章

python爬虫基础04-网页解析库xpath

如何找到xpath表单网页

Python爬虫--Xpath

Python+Selenium学习-Xpath的使用

XPath

使用 selenium 函数按名称查找元素时元素不可交互,但在通过 xpath 方法使用查找元素时有效