You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Airbnb站点Python爬虫Request Get请求返回结果随机异常求助

问题原因分析
  • Airbnb前端页面采用动态类名混淆策略,你代码中使用的_8s3ctt是平台自动生成的随机类名,会定期更新失效,这是返回结果不稳定的最常见原因
  • 你使用的搜索URL中,入住/退房日期是2021年的过期参数,过时的搜索条件本身就会出现随机返回空结果的情况
  • 页面内容大部分由JavaScript动态渲染,直接用requests请求静态HTML,部分请求返回的内容未包含完整渲染的房源节点,也会导致解析不到元素
  • 反爬策略触发后,平台会返回验证码页面、空白页或者假数据页面,你没有对返回内容做合法性校验,直接解析就会得到0条结果
解决方案
  • 先打印requests请求返回的完整HTML内容,校验返回的是不是正常的房源搜索结果页,确认是否触发了反爬验证
  • 放弃使用随机混淆类名定位元素,改用更稳定的属性定位,比如Airbnb房源卡片统一带有data-testid="listing-card的属性,用soup.find_all('div', attrs={'data-testid': 'listing-card'})定位兼容性更强
  • 更换URL中的入住、退房参数为近期有效日期,排除无效搜索条件的影响
  • 补充完整的请求头,包括浏览器真实的User-Agent、Accept、Accept-Language以及必要的Cookie字段,不要仅携带部分请求头
  • 条件允许的情况下优先抓取平台的前端API接口,Airbnb搜索时会返回结构化的JSON格式房源数据,不需要解析HTML,稳定性更高;也可以使用Selenium、Playwright等无头浏览器工具模拟浏览器行为,拿到完整渲染后的页面内容再解析

内容的提问来源于stack exchange,提问作者WJSG

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 07:18:04