我尝试通过类名删除元素,但是它不起作用。

这是我使用的代码:

await page.screenshot({path: 'pic.png'});   //for testing purposes
    let div_selector_to_remove= ".xj7.Kwh5n";
    var thingToRemove = document.querySelectorAll(div_selector_to_remove);
    var number_of_elements = thingToRemove.length;
    for (var i = 0; i < number_of_elements.length; i++) {
        thingToRemove[i].parentNode.removeChild(thingToRemove);
    }

浏览器加载,我得到了加载了元素的屏幕截图。什么都没发生。元素保留在那里

最佳答案

document.querySelector中运行page.evaluate。这是我的答案:

await page.goto('<url_here>');
let div_selector_to_remove= ".xj7.Kwh5n";
await page.evaluate((sel) => {
    var elements = document.querySelectorAll(sel);
    for(var i=0; i< elements.length; i++){
        elements[i].parentNode.removeChild(elements[i]);
    }
}, div_selector_to_remove)

关于javascript - puppeteer -按类别删除元素,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/50867065/

10-16 14:32