gpt4 book ai didi

python - BeautifulSoup- find_all- 订单保存

转载 作者:行者123 更新时间:2023-12-05 07:36:08 26 4
gpt4 key购买 nike

我正在尝试解析一个具有多个同名类的网站。我想采用第一个(如网页上所示)类(class)的元素。但是,find_all 或 find 不保留解析的顺序。下面是我对 find_all 的实现

请帮忙:

import urllib.request
from bs4 import BeautifulSoup


searchQueryFK = "https://www.flipkart.com/search?q="+str("panasonic%2043e200dx")
r = urllib.request.urlopen(searchQueryFK).read()
soup = BeautifulSoup(r,'html.parser')
FKPrice = soup.find_all("div", {'class':"_2SxMvQ"})[0].find_all("div", {'class':"_1vC4OE"})[0]

print(FKPrice.text[1:])

最佳答案

我想说我不是最有资格评论性能的人,因为 bs4 使用了一种我不太熟悉的结构,即 generator

在查看 beautiful soup ( github ) 的源代码后,我发现该函数迭代了一些 generator。因此我的结论是:如果生成器保留它们的顺序,那么 find_all() 也会保留它们的顺序,否则反之亦然。

只需搜索 def find_all(,在源代码中,然后让我知道,什么听起来对你有说服力。

但由于 python 中的 range 函数也返回一个生成器,因此我相信生成器保留了它们的顺序,因此我的主张是 find_all 也保留了顺序。

但是,我不是 100% 确定。

关于python - BeautifulSoup- find_all- 订单保存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49248799/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com