【发布时间】:2023-04-03 02:10:01
【问题描述】:
我想从机票聚合器收集 10 个最优惠的价格 - http://www.aviasales.com。
例如,我们将找到 8 月 6 日莫斯科-巴塞罗那航班的 10 个最便宜的价格。具体的 URL 是http://www.aviasales.com/flights/MOW0608BCN1。 如您所知,任何聚合器都会花费几秒钟的时间进行搜索,然后显示最便宜的报价。因此,问题在于我可以在页面开始加载的初始点抓取的数据没有所需的信息。它仅在页面开始下载后 30 秒出现。
根据我的观点,解决问题的最简单方法是某种计时器。但是我的代码中的 scraper 再次从零开始打开页面。因此,收集没有价格的数据。在这种情况下我该怎么办?
我在下面附上我的代码(第一最优惠的价格):
import requests, bs4
import time
import webbrowser
webbrowser.open('http://www.aviasales.com/flights/MOW0608BCN1')
time.sleep(30)
url=requests.get('http://www.aviasales.com/flights/MOW0608BCN1')
b=bs4.BeautifulSoup(url.text, "html.parser")
price_string=b.select('currency_font currency_font-usd')
price=price_string[0].getText()
print(price)
所需数据编号: https://www.photobox.co.uk/my/photo?album_id=5263636965&photo_id=500604214523
【问题讨论】:
标签: python web-scraping