我试图从这段代码中提取所有'a'标记内的文本,我得到一个错误。

(AttributeError:结果集对象没有属性'find_all'。你可能把一个元素的列表当成了一个单一的元素。当你想调用find()时,你是否调用了find_all()?)

我做错了什么?

import json
import time
from datetime import datetime
from discord import Webhook, RequestsWebhookAdapter
from discord_webhook import DiscordWebhook, DiscordEmbed
import discord
from bs4 import BeautifulSoup
from discord.ext import commands
r = requests.get("https://www.hypedc.com/nz/nike-air-force-1-07-black-black-cw2288-001")
soup = BeautifulSoup(r.content, 'lxml')
size = soup.find('div', id="size-selector-tab-mobile-0")
size = size.find_all('li', class_='col-xs-6 col-sm-8 col-md-6 col-lg-4')
size = size.find_all('a').text
print(size)
    
3 个评论
erip
你的代码没有显示任何试图寻找'a'的标签。
"但这并不奏效",什么错误信息?
OK let me fix the question.
python
beautifulsoup
python-requests
Supreme
Supreme
发布于 2021-01-08
1 个回答
Samsul Islam
Samsul Islam
发布于 2021-01-08
已采纳
0 人赞同

这里size.find_all('li', class_='col-xs-6 col-sm-8 col-md-6 col-lg-4')返回一个列表。所以你需要对其进行迭代以获得大小。

import requests
r = requests.get("https://www.hypedc.com/nz/nike-air-force-1-07-black-black-cw2288-001")
soup = BeautifulSoup(r.content, 'lxml')
size = soup.find('div', id="size-selector-tab-mobile-0")