You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何解决Python爬虫运行时出现TabError:缩进中制表符与空格使用不一致问题

问题1:TabError报错解决

这个报错是Python的缩进规则触发的,你代码里混用了制表符(Tab)和空格来做缩进,Python要求同一层级的缩进必须统一,要么全用Tab,要么全用4个空格。你第二层for循环下面的ques、print两行首先缩进层级就不符合要求,把这部分的缩进全部替换成统一的4个空格即可解决报错。

问题2:爬取逻辑修正

你的整体思路方向是对的,但代码里有3处逻辑错误:

  • 第二层查找li标签时用了全局的soup.find_all,应该换成当前循环到的question(也就是你拿到的ul对象)去查找,不然每次都是从整个页面根节点找所有符合条件的li,会重复抓取
  • 你写的li类名questions-content first odd是多个动态类名的组合,只会匹配排序为奇数的第一个li,会漏掉其他提问,直接匹配questions-content这一个类名即可
  • 提取a标签文本时用了question.find,应该换成当前循环到的content(li对象)去查找,不然每次都拿ul下第一个a标签的内容,所有输出都会重复

修正后的参考代码

from bs4 import BeautifulSoup
import requests

url = "https://forum.bouyguestelecom.fr/questions/browse?utf8=%E2%9C%93&flow_state=published&search=&order=created_at.desc"
req = requests.get(url).text

soup = BeautifulSoup(req, 'html.parser')
questions = soup.find_all("ul", class_="questions")

for question in questions:
    # 从当前ul里找所有提问li
    contents = question.find_all("li", class_="questions-content")
    for content in contents:
        # 从当前li里找对应a标签
        ques = content.find("a", class_="content_permalink").text
        print(ques)

内容的提问来源于stack exchange,提问作者ossama assaghir

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 23:06:04