我正在尝试的是从
获取成分部分所以我做的是
import requests
from bs4 import BeautifulSoup
x=requests.get("https://www.walmart.com/ip/Nature-s-Recipe-Chicken-Wild-Salmon-Recipe-in-Broth-Dog-Food-2-75-oz/34199310")
soup=BeautifulSoup(x.content)
print(soup.find_all("p",{"class":"Ingredients"})[0])
但它的显示指数超出范围,即。没有找到任何元素,但在检查网站时元素确实存在'p class =“Ingredients”'
答案 0 :(得分:1)
坏消息,看起来这些元素是通过JS生成的。如果你"查看来源"该页面中的元素不存在,这是请求获取的html。
我会使用像selenium这样的东西来自动化浏览器以获得完全渲染的html,然后你可以使用beautifulsoup来解析成分。
我个人觉得当网站使用JS生成大量内容而不是让页面更具互动性等时非常烦人。但是你要做什么......