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

Python爬取APKMirror表格元素链接问题求助

解决APKMirror搜索结果链接提取问题

你的代码仅输出“all done”是因为选择器错误,未定位到正确的链接元素。结合截图里的搜索结果表格,以下是修正方案:

问题分析

原代码中soup.find_all("div", {'class': 'accent_color'})的选择器不符合APKMirror页面的实际结构,搜索结果里的应用链接并不在这个类的div中,导致找不到任何目标元素。

修正后的代码

import requests
from bs4 import BeautifulSoup

USER_AGENT = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:95.0) Gecko/20100101 Firefox/95.0'}

line = "football"


def search():
    # 修正URL中的HTML实体编码,使用&代替&
    apk_mirror_url = f'https://www.apkmirror.com/?post_type=app_release&searchtype=apk&s={line}'
    response = requests.get(apk_mirror_url, headers=USER_AGENT)
    
    # 检查请求是否成功
    if response.status_code != 200:
        print(f"请求失败,状态码: {response.status_code}")
        return
    
    soup = BeautifulSoup(response.text, 'html.parser')
    # 定位搜索结果表格中的应用行,提取对应链接
    for app_row in soup.find_all("div", class_="appRow"):
        app_link = app_row.find("a", class_="fontBlack")
        if app_link:
            # 拼接完整URL,原href为相对路径
            full_url = f"https://www.apkmirror.com{app_link.get('href')}"
            print(full_url)
    
    print("all done!")


search()

关键修改说明

  1. 修正URL:将原URL中的&替换为&,避免URL解析错误导致请求页面不符合预期
  2. 增加请求校验:添加状态码检查,快速排查请求失败的问题
  3. 调整选择器:使用div.appRow定位搜索结果的每一行,再通过a.fontBlack获取应用的链接元素,这是APKMirror搜索结果的正确结构
  4. 拼接完整URL:页面中的链接是相对路径,需要拼接域名得到完整可访问的URL

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.22 20:09:25