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

使用BeautifulSoup遇TypeError:‘Response’对象无len()方法求解

解决BeautifulSoup触发TypeError: 对象无len()方法的问题

兄弟,太懂你这种跟着教程一步步来却踩坑的郁闷了!你碰到的这个错误根源其实特别简单——就是传错参数给BeautifulSoup了。

你看,requests.get()返回的是一个Response对象,它包含了请求状态、响应头这些信息,但并不是直接的HTML文本。而BeautifulSoup初始化的时候需要的是网页的HTML源码内容,你直接把Response对象扔给它,它会尝试调用len()方法来处理这个对象,自然就触发TypeError了。

给你修正后的代码,只需要加个.text就能搞定:

import requests
from bs4 import BeautifulSoup
http = requests.get("https://www.imdb.com/title/tt0366627/?ref_=nv_sr_1")
# 重点:用http.text获取网页的HTML文本内容
soup = BeautifulSoup(http.text, 'lxml')
print(soup)

另外给你个小建议,最好在处理响应前先判断请求是否成功,避免请求失败后后续代码报错:

import requests
from bs4 import BeautifulSoup
http = requests.get("https://www.imdb.com/title/tt0366627/?ref_=nv_sr_1")
if http.status_code == 200:
    soup = BeautifulSoup(http.text, 'lxml')
    print(soup)
else:
    print(f"请求失败,状态码:{http.status_code}")

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.27 09:30:54