【发布时间】:2020-07-12 16:57:51
【问题描述】:
我想从一个网站中提取数据并建立一个包含字典的列表。
item = {"price": "", "price per gramm": ""}
list_of_sku = []
soup = BeautifulSoup(open("./FULL_data.html"), "html.parser")
for divs in soup.find_all('div', attrs={"class": "col-xs-6 col-sm-4"})[:2]:
links = divs.find_all("tr")
for row in links:
# We get list of prices here
item_text = row.find('td')
if item_text:
item["price"] = str(item_text.text)
print(item["price"])
list_of_sku.append(item)
print(list_of_sku)
结果,我得到了一个附加列表,但是一行中的所有价格都是一样的。
/PycharmProjects/MyFirstOne/WEBSCRAPING/Work with Soup data.py"
$125.70 [{'price': '$125.70', 'price per gramm': ''}]
$35.70 [{'price': '$35.70', 'price per gramm': ''}, {'price': '$35.70', 'price per gramm': ''}]
Process finished with exit code 0
请帮我解决这个问题。
【问题讨论】:
-
欢迎来到 SO!没有看到您的 HTML,很难提供帮助。请创建一个minimal reproducible example。谢谢。
标签: python-3.x list beautifulsoup append