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

如何使用Selenium或BeautifulSoup爬取谷歌地图热门时段?

爬取谷歌地图热门时段的可行方法

使用Selenium爬取

  • 初始化浏览器实例,打开目标地点的谷歌地图页面,等待页面完全加载(热门时段属于动态渲染内容,需等待对应元素加载完成)
  • 定位并提取数据:
    • 日期名称:通过选择器div[aria-label^="Popular"][role=region] div[role="img"]定位元素,提取文本后用字典映射把英文日期转为中文(比如Monday转周一)
    • 时段拥挤数据:定位div[role="img"][class^="dpoVld"]元素,读取其aria-label属性,获取具体的繁忙程度描述(如"现在的繁忙程度为65%")
  • 反爬注意:设置合理的等待间隔,添加随机延迟,可启用无头浏览器模式,降低被反爬检测的概率

使用BeautifulSoup爬取

  • 由于热门时段是动态渲染内容,直接用requests请求静态HTML无法获取数据,需先获取渲染后的页面源码:
    • 可借助requests-html库的render()方法加载动态内容,或者先用Selenium打开页面后导出源码
  • 解析渲染后的HTML:
    • 提取日期:用soup.select('div[aria-label^="Popular"][role=region] div[role="img"]')获取所有日期元素,遍历提取文本并转中文
    • 提取时段数据:用soup.select('div[role="img"][class^="dpoVld"]')定位元素,提取每个元素的aria-label属性值,得到对应时段的拥挤信息

日期转换小技巧

提前定义英文转中文的映射字典:

en_to_zh_date = {
    "Monday": "周一",
    "Tuesday": "周二",
    "Wednesday": "周三",
    "Thursday": "周四",
    "Friday": "周五",
    "Saturday": "周六",
    "Sunday": "周日"
}

提取英文日期后,直接通过字典替换得到中文日期。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.29 16:25:08