源码之家

  • 首页
  • 文章
  • 问答
  • 下载
您的位置: 首页  >  文章  >  python xpath 解析html--下、
    下
  • python xpath 解析html--

下、
    下
  • 分类: 文章 • 2022-10-09 14:55:20

    用xpath来解析一般标签都很简单,因为大多数到可以找到class或者是id等属性,确定一类情况。但是<table>下有多个<tb>,<ul>下有多个<li>,而且还没有属性,类似这种:

    python xpath 解析html--<table>下<tb>、<ul>下<li>


    python xpath 解析html--<table>下<tb>、<ul>下<li>

    解决办法:

    第一种:用etree.HTML()

    res = etree.HTML(response.txt)
    table_list = res.xpath('//table[@class="xx"]')#这里的写法和response.xpath一般写法大同小异
    #得到table_list这个列表,循环里再进行操作
    for table in table_list:
    item["link"]= table.xpath('.//td[@class="xx"]//a[1]//@href')
    第二种:

    res = etree.HTML(response.txt)

    之后xpath可以自己不用写,在要爬取的网页中,摁F12,会出现下边这个:

    python xpath 解析html--<table>下<tb>、<ul>下<li>

    选择python xpath 解析html--<table>下<tb>、<ul>下<li>,之后把光标移到你要解析的地方,比如我要爬取的数据有‘泉州’:

    python xpath 解析html--<table>下<tb>、<ul>下<li>

    看到右侧出现对应的源代码,之后鼠标右键copy->copy xpath,就可以得到/html/body/div[6]/div[1]/ul/li[2]/strong/a,再稍微修改下就可以了。

    python xpath 解析html--<table>下<tb>、<ul>下<li>

    相关推荐

    • python xpath 解析html--
下、
    下
  • 4.爬虫数据提取——lxml库的环境配置
  • 学习xpath,使用lxml+xpath提取内容。
    网站免责声明 网站地图 最新文章 用户隐私 版权申明
本站所有数据收集于网络,如果侵犯到您的权益,请联系网站进行下架处理。   

Copyright © 2018-2021   Powered By 源码之家    备案号:   粤ICP备20058927号