xpath获取不到元素的原因

博客探讨了在使用XPath进行网页抓取时遇到的问题,即浏览器显示的XPath路径包含tbody元素,但在实际HTML文件中并不存在。文章指出,这可能是浏览器自动添加tbody节点导致的解析错误。解决方案是去除tbody节点,正确XPath应为://*[@id="content"]/div[3]/table/tr[2]/td[1]/text()。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

#去掉tbody!

原://*[@id="content"]/div[3]/table/tbody/tr[2]/td[1]/text()

去掉后://*[@id="content"]/div[3]/table/tr[2]/td[1]/text()
 

直接复制浏览器路径的是没错,显示不出来,说明路径肯定有问题。应该是浏览器自动加了tbody节点导致最终解析的时候没有。

我们爬的时候,是下面这种文件,最下面的日期是我想要获取的数据。可以看到其中,并没有出现tbody这样的节点,而是<!-- Baidu Button END --> 这种。

                    <div id="content" class="wdetail">
                        <h1>
                            2020年1月西安空气质量指数AQI_PM2.5历史数据
                        </h1>
                    <!-- Baidu Button BEGIN -->
                    <div id="bdshare" class="bdshare_t bds_tools get-codes-bdshare">
                    <span class="bds_more">分享到:</span>
                    <a class="bds_tsina"></a>
          
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值