Python 无法刮取此特定的div类

Python 无法刮取此特定的div类,python,web-scraping,beautifulsoup,Python,Web Scraping,Beautifulsoup,我很好奇为什么我不能用这个类获得div元素,如下所示(它以前工作过,但在不同的站点上)。也许这是这个网站的问题 from urllib.request import urlopen from bs4 import BeautifulSoup import requests url = "https://www.docmorris.de/produkte/abnehmen" page=requests.get(url, headers=headers) soup = BeautifulSoup

我很好奇为什么我不能用这个类获得div元素,如下所示(它以前工作过,但在不同的站点上)。也许这是这个网站的问题

from urllib.request import urlopen
from bs4 import BeautifulSoup
import requests

url = "https://www.docmorris.de/produkte/abnehmen"
page=requests.get(url, headers=headers)

soup = BeautifulSoup(page.content, features="lxml")
divs=soup.find_all("div",attrs={"class": "l-product mod-standard product 
list-item ff-slider"})
print(divs)

打印一个空数组。我希望所有div元素都具有“l-product mod standard product list item ff slider”类

您只需要一个多值的类,这样就不会那个么脆弱了。此外,删除标题

from bs4 import BeautifulSoup
import requests

url = "https://www.docmorris.de/produkte/abnehmen"
page = requests.get(url)  
soup = BeautifulSoup(page.content, features="lxml")
divs = soup.select('.l-product')
print(divs)
多值(更脆弱)将是:

divs = soup.select('.l-product.mod-standard.product.list-item.ff-slider')
或(如注释-确保在一行中):


您只需要一个多值的单一类,这样就不那个么脆弱了。此外,删除标题

from bs4 import BeautifulSoup
import requests

url = "https://www.docmorris.de/produkte/abnehmen"
page = requests.get(url)  
soup = BeautifulSoup(page.content, features="lxml")
divs = soup.select('.l-product')
print(divs)
多值(更脆弱)将是:

divs = soup.select('.l-product.mod-standard.product.list-item.ff-slider')
或(如注释-确保在一行中):


在youclass属性上有一个新行char,我想这就是它不匹配的原因。我建议将其设置为一行,而不是两行。you class属性上有一个新的行字符,我想这就是它不匹配的原因。我建议把它改为一行而不是两行。但是如果你看源代码,你会发现类名中没有点?!你为什么用圆点。为什么“.l-product”可以工作?顶级版本是由css选择的。在css选择器中,点是一个类选择器。用点连接多值类,不使用空格。您可以通过项目的任何单个值对具有多个值的项目进行匹配。诀窍是看看是否有一个类仍然唯一地标识感兴趣的元素(而不是其他元素)。上面的两个注释都不能用于soup。选择('.l-product')例如,您尝试过吗?而且我的方式和类名只在一行中(之前也在一行中)不起作用。谢谢它起作用。我犯了一个愚蠢的错误,错发了我的url!很抱歉,但是如果你看源代码,你会发现类名中没有点?!你为什么用圆点。为什么“.l-product”可以工作?顶级版本是由css选择的。在css选择器中,点是一个类选择器。用点连接多值类,不使用空格。您可以通过项目的任何单个值对具有多个值的项目进行匹配。诀窍是看看是否有一个类仍然唯一地标识感兴趣的元素(而不是其他元素)。上面的两个注释都不能用于soup。选择('.l-product')例如,您尝试过吗?而且我的方式和类名只在一行中(之前也在一行中)不起作用。谢谢它起作用。我犯了一个愚蠢的错误,错发了我的url!对不起