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

使用bs4的find方法爬取网站时出现find()不接受关键字参数报错如何解决

错误原因
  • soup.find(id="carlist")返回的是单个Tag类型对象,直接遍历该对象会同时返回Tag子节点和NavigableString(纯文本内容)节点,NavigableString类型没有支持关键字参数的find方法,调用时就会触发你遇到的报错。
  • 你对results执行了两次遍历操作,第一次遍历完成后迭代器已经耗尽,第二次遍历无法获取到任何有效内容。
修正方案

不需要逐一遍历carlist的子节点,直接在carlist节点下用find_all批量匹配所有符合条件的目标标签即可,修正后的代码如下:

from bs4 import BeautifulSoup
import requests

URL = "https://www.kudosprime.com/fh4/carlist.php?range=2000"
page = requests.get(URL)

soup = BeautifulSoup(page.content, "html.parser")

results = soup.find(id="carlist")
# 批量查找所有class为name的a标签
name_list = results.find_all('a', attrs={'class':'name'})

for name in name_list:
    print(name.text)

注:原代码中导入的selenium、pandas相关依赖在当前逻辑中未使用,可根据实际需求决定是否保留。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 04:24:03