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

已抓取网页对象,如何获取Play Store某开发者应用的实际链接?

解决Google Play开发者旗下应用链接提取问题

问题根源

  • 页面为动态渲染,原代码执行时目标元素尚未加载完成
  • ULeU3b仅为应用卡片的容器类,实际链接嵌套在内部的<a>标签中
  • 未处理滚动加载逻辑,开发者页面应用数量较多时,首屏仅显示部分内容

修正后的代码

import time
from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

# 初始化浏览器
driver = webdriver.Chrome(executable_path=ChromeDriverManager().install())
driver.get("https://play.google.com/store/apps/dev?id=5305197572942248936")
driver.maximize_window()

# 滚动页面加载全部应用
last_height = driver.execute_script("return document.body.scrollHeight")
while True:
    driver.execute_script("window.scrollTo(0, document.body.scrollHeight);")
    time.sleep(2)  # 等待新内容加载
    new_height = driver.execute_script("return document.body.scrollHeight")
    if new_height == last_height:
        break
    last_height = new_height

# 等待应用元素加载完成,定位到带链接的a标签
wait = WebDriverWait(driver, 10)
app_link_elements = wait.until(EC.presence_of_all_elements_located((By.XPATH, "//div[@class='ULeU3b']/a")))

# 提取并打印所有应用链接
for element in app_link_elements:
    full_link = element.get_attribute("href")
    print(full_link)

driver.quit()

核心优化点

  • 改用显式等待确保元素完全加载后再获取,避免空结果
  • 通过XPATH直接定位容器内的<a>标签,提取href属性得到完整链接
  • 添加滚动循环逻辑,触发页面加载所有应用内容
  • 代码末尾关闭浏览器,释放资源

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.11 11:36:01