首页 > 解决方案 > 试图从网站上抓取数据,必须导航多个标签

问题描述

我一直在尝试浏览网页的 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'})

这给了我相同的结果,什么都没有。

标签: pythonhtmlparsingweb-scrapingbeautifulsoup

解决方案


如果您不想摆弄 HTML,那么您可以向以下地址发送 GET 请求。如果您打开浏览器并检查网页发送的网络请求以获取其数据,它会以 JSON 格式返回所有结果。

https://seatgeek.com/rescraper/v2/listings?_include_seats=1&client_id=MTY2MnwxMzgzMzIwMTU4&id=5164898&sixpack_client_id=5270c621-c506-48f4-8420-0a06161f718b


推荐阅读