python爬虫学习过程中遇到的问题记录

本文介绍了使用XPath提取网页元素文本的技巧,特别是如何完整获取标签内的所有文本,避免遗漏。同时,针对爬虫过程中常见的list index out of range错误,提供了有效的解决方案,确保爬虫稳定运行。

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

一、xpath取出标签下的全部文本

在学习爬虫爬取百度搜索记录的过程中,想要提取搜索记录的标题,比如
在这里插入图片描述
对应的HTML是:
在这里插入图片描述
比如在上面的图片中,想打印出“使用apriori进行关联分析(一)-我是8位的-博客园”
我首先尝试了

content = selector.xpath('//*[@id="' + str(pn+i) + "\"]/h3/a[1]/text()")

发现打印出的结果是
在这里插入图片描述
标签中的关键字“apriori”没有打印出来。
解决方法:

content = selector.xpath('//*[@id="' + str(pn+i) + "\"]/h3/a[1]")
for contents in content:
    print(contents[0].xpath('string(.)').strip())

修改后的结果
在这里插入图片描述
参考博客:https://blog.youkuaiyun.com/zheng_lan_fang/article/details/78363280

二、list index out of range

爬虫遇到如下错误:
在这里插入图片描述
是因为爬虫的过程中遇到了空值,解决方法是加上判断语句:

except IndexError:
    pass

参考博客:https://www.jianshu.com/p/f1b58ec12b72

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值