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

Selenium无法点击页面全部公寓模块展开按钮的问题求助

Selenium无法点击页面全部公寓模块展开按钮的问题求助

我正在爬取一个柏林公寓售卖页面,页面里有不少打包在一起的公寓组,我需要点击每个组里标记的按钮(红色圈出的那个),把组里所有公寓都展开显示出来。

目前我的代码只能展开第一个公寓组,其他的都处理不了——有的页面可能有1个、5个甚至没有这种公寓组。我用的代码如下:

while True:
        try:
            show_more_units = driver.find_element(By.XPATH, '//*[@id="result-p-149498364"]/div[3]/button')
            show_more_units.click()
            time.sleep(0.2)
            print("Show more button clicked.")

        except:
            print('No button to "Show more".')
            break

后来我发现每个展开按钮的ID都是不一样的,于是又试了下面两种写法,但都没效果,甚至连一个公寓组都展开不了:

第一种是通过按钮文本定位:

show_more_units = driver.find_element(By.XPATH, "//button[contains(text(), 'Einheiten anzeigen')]")

第二种是通过类名定位:

show_more_units = driver.find_element(By.CLASS_NAME, 'padding-left-none link-text-secondary button')

我想在开始爬取信息之前,把所有这类公寓组都展开,请问该怎么做到呢?提前谢谢大家的帮助!

附:这个展开按钮的HTML代码如下:

<button class="padding-left-none link-text-secondary button"><span class="s24-icons-s24_chevron_right_24"></span> <!-- -->3 weitere Einheiten anzeigen</button>

备注:内容来源于stack exchange,提问作者SolidOpt

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.17 12:13:18