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

如何用Puppeteer修改Wyndham网站滑块的aria-valuemax属性

问题

在温德姆(Wyndham)酒店网站中,我尝试将类为ui-slider-handle的元素的aria-valuemax值修改为200,但无法定位该元素。

Wyndham Slider

我的尝试

最小可复现代码

const puppeteer = require('puppeteer-extra');
const fs = require('fs/promises');

// * 主函数
let browser;
async function wyndhamScan() {
    browser = await puppeteer.launch({
    headless: false
    });
    const [page] = await browser.pages();
    const ua = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36";
    await page.setUserAgent(ua);
    await page.setViewport({ width: 1065, height: 10700 });

    // 访问目标网站
    await page.goto('https://www.wyndhamhotels.com/wyndham', { waitUntil: "domcontentloaded" });

    // 输入目的地
    await page.type('[name="destination"]', 'Chicago, IL, USA' );
    await page.waitForTimeout(1000);

    // 点击搜索按钮
    await page.click('.search-btn.btn-primary');


    // ------------------------------------------ 跳转至结果页 ----------------------------------------
    
}


//! 尝试修改滑块最大值
    /*
    const priceSliderSelector = '[class^="ui-slider-range"]';
    const priceSlider = await page.$(priceSliderSelector);

    if (priceSlider) {
        await page.evaluate((priceSlider) => {
            priceSlider.aria-valuemax = constants.MAX_PRICE;
        })
    }


// * 调用主函数
(async () => {
    console.log('启动温德姆爬虫程序...');
    await wyndhamScan()
        .catch(err => console.error(err))
        .finally(() => browser?.close());
})();

尝试1

// 滑动价格滑块
    /*
    const priceSliderSelector = '[class^="ui-slider-range"]';
    const priceSlider = await page.$(priceSliderSelector);

    if (priceSlider) {
        await page.evaluate((priceSlider) => {
            priceSlider.aria-valuemax = constants.MAX_PRICE;
        })
    }

尝试2

await page.evaluate(() => {
        // const maxSliderVal = document.querySelector('.price-slider-cmp span.max-slider-val-v2');
        const maxSliderVal = document.querySelector('#pricerangefilter-v2 span[class^="ui-slider-handle"]');
        if (maxSliderVal) {
            console.log(`滑块当前最大值: ${maxSliderVal.getAttribute('aria-valuemax')}`);
            maxSliderVal.textContent = maxPrice; // 将'New Value'替换为你想要的值
        } else {
            console.log('未找到maxSliderVal元素');
        }
    });

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.10 12:05:40