Python通过beautifulsou抓取Expedia数据

2024-04-25 23:50:40 发布

您现在位置:Python中文网/ 问答频道 /正文

我正试图从expedia抓取酒店数据。例如,从2020年1月1日到2020年3月1日,在加拿大卡文迪什(Cavendish)将所有的酒店链接都删除。但现在的问题是,我只能报废其中20个,它实际上是包含200+为每个地方。示例网页及其url如下所示:

https://www.expedia.com/Hotel-Search?adults=2&destination=Cavendish%20Beach%2C%20Cavendish%2C%20Prince%20Edward%20Island%2C%20Canada&endDate=01%2F03%2F2020&latLong=46.504395%2C-63.439669&regionId=6261119&rooms=1&sort=RECOMMENDED&startDate=01%2F01%2F2020

刮码:

import lxml
import re
import requests
from bs4 import  BeautifulSoup
import xlwt
import pandas as pd
import numpy as np

url = 'https://www.expedia.com/Hotel-Search?adults=2&destination=Cavendish%20Beach%2C%20Cavendish%2C%20Prince%20Edward%20Island%2C%20Canada&endDate=01%2F03%2F2020&latLong=46.504395%2C-63.439669&regionId=6261119&rooms=1&sort=RECOMMENDED&startDate=01%2F01%2F2020'

header={'User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.75 Safari/537.36'}

res = requests.get(url,headers=header)

soup = BeautifulSoup(res.content,'lxml')

t1 = soup.select('a.listing__link.uitk-card-link')

所以每个链接都存储在<a class='listing__link.uitk-card-link' href=xxxxxxx> </a>里面<li></li>,html结构之间没有区别,有人能解释一下吗?你知道吗


Tags: httpsimportcomurlsearch链接wwwlink
1条回答
网友
1楼 · 发布于 2024-04-25 23:50:40

他们正在使用API调用来获取接下来的20条记录。没有办法把接下来的20条记录作废。你知道吗

以下是当你点击“显示更多”时他们使用的API详细信息

API LINK

他们有API身份验证来使用API调用获取数据。你知道吗

注意:只有在没有任何ajax调用和身份验证方法的情况下,刮取才有效。你知道吗

相关问题 更多 >

    热门问题