首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >bs4:用同一个类分割文本- python

bs4:用同一个类分割文本- python
EN

Stack Overflow用户
提问于 2022-05-24 13:43:06
回答 1查看 114关注 0票数 0

我第一次在网络上刮擦,遇到了一个问题:有些类的名字是一样的。

这是代码:

代码语言:javascript
复制
testlink = 'https://www.ah.nl/producten/product/wi387906/wasa-volkoren'

r = requests.get(testlink)
soup = BeautifulSoup(r.content, 'html.parser')

products = (soup.findAll('dd', class_='product-info-definition-list_value__kspp6'))

这是输出

代码语言:javascript
复制
[<dd class="product-info-definition-list_value__kspp6">13 g</dd>, <dd class="product-info-definition-list_value__kspp6">20</dd>, <dd class="product-info-definition-list_value__kspp6">Rogge, Glutenbevattende Granen</dd>, <dd class="product-info-definition-list_value__kspp6">Sesamzaad, Melk</dd>]

我要上第三等课(罗格,格朗.我正在使用这个链接来测试,并最终想刮多个网页的网站。有什么建议吗?

谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-05-24 14:07:35

您可以选择所有具有类值product-info-definition-list_value__kspp6和列表切片的dd标记。

代码语言:javascript
复制
import requests
from bs4 import BeautifulSoup
url='https://www.ah.nl/producten/pasta-rijst-en-wereldkeuken?page={page}'
for page in range(1,11):
    req = requests.get(url.format(page=page))
    soup = BeautifulSoup(req.content, 'html.parser')

    for link in soup.select('div[class="product-card-portrait_content__2xN-b"] a'):
        abs_url = 'https://www.ah.nl' + link.get('href')
        #print(abs_url)
        

        req2 = requests.get(abs_url)
        soup2 = BeautifulSoup(req2.content, 'html.parser')
        dd = [d.get_text() for d in soup2.select('dd[class="product-info-definition-list_value__kspp6"]')][2:-2]
        print(dd)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72364020

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档