【发布时间】:2020-05-26 10:13:47
【问题描述】:
我一直在尝试浏览网页的 HTML 并抓取数据。我想我已经确定了正确的标签,但是当我将值分配给一个列表并检查长度时,我什么也没得到。我一直在使用下面的代码
import requests
from bs4 import BeautifulSoup as soup
my_url = 'https://seatgeek.com/justin-bieber-with-kehlani-and-jaden-smith-tickets/philadelphia-pennsylvania-lincoln-financial-field-2020-08-01-7-pm/concert/5164898'
response = requests.get(my_url).text
soup = soup(response, 'lxml')
containers = soup.find_all('div'),{'data-e2e':'event-listing'})
print(containers)
当我运行它时,我得到了
输出:[]
我也试过了
containers = soup.find_all('div'),{'class':'omnibox__listing ds-0 omnibox__listing--alternate-layout'})
这给了我同样的结果,什么都没有。
【问题讨论】:
-
你检查数据是否在请求返回的 HTML 中吗?此外,您将 BeautifulSoup 导入为
soup,但还要将变量命名为soup,这是个坏主意。 -
刚刚将我的变量“soup”更改为“sauce”。谢谢
-
我很确定它在代码中 - 当我在网页上点击检查时,我可以很容易地找到它。目前在 JS 美化器上试图确认它是但我不确定为什么它不会?
-
您要查找的元素不在汤的 HTML 内容中。
-
我很确定它在代码中 - 当我在网页上点击检查时,我可以很容易地找到它。真正的问题是 Requests 和 BeautifulSoup 是否可以为您提供这些不过元素。
标签: python html parsing web-scraping beautifulsoup