小编use*_*288的帖子

Puppeteer 在页面中查找数组元素然后点击

您好,我有一个 url 由 javascript 呈现的网站。我想在我的网站中找到所有脚本标签,然后找到数学脚本 src 并只返回有效的标签。接下来找到脚本的父级,最后点击链接。这就是我所拥有的:

const scripts = await page.$$('script').then(scripts => {
    return scripts.map(script => {
        if(script.src.indexOf('aaa')>0){
            return script
        }
    });
});
scripts.forEach(script => {
    let link = script.parentElement.querySelector('a');
    link.click();
});
Run Code Online (Sandbox Code Playgroud)

我的问题是我有 script.src 未定义。当我删除该条件时,我移动到 forEach 循环,但我得到 querySelector 未定义。我可以在调试模式控制台内的 js 中编写该代码,但我无法将其移动到 Puppeteer API。

从控制台我得到预期的结果

let scripts = document.querySelectorAll('script');
scripts.forEach(script=>{
let el = script.parentElement.querySelector('a');
console.log(el)
})
Run Code Online (Sandbox Code Playgroud)

javascript puppeteer

3
推荐指数
1
解决办法
3565
查看次数

如何在xampp中启用zip.dll

你好我是用xampp for windows.我想跑:

https://github.com/johmue/mysql-workbench-schema-exporter
Run Code Online (Sandbox Code Playgroud)

导出我的架构.

我在mysql工作台中创建我的架构并保存它.仍然当我运行程序时,我得到错误.

可能不是MySQL Workbench文档

要修复它需要在xampp上启用zip模块.我知道我必须编辑php.ini,但我找不到zip.dll,所以我想知道如何启用它.

php xampp

1
推荐指数
2
解决办法
2万
查看次数

在 foreach 循环中获取多个链接

我有一系列像这样的链接:

let array = ['https://1','https://2','https://3']
Run Code Online (Sandbox Code Playgroud)

比我想循环所有元素并在它们上运行 fetch 。仍然 fetch 是异步的,所以我多次收到请求我处理这个问题,从数组中删除元素,如下所示:

array.forEach((link,index) => {
    fetch(link, {mode: 'no-cors'}).then(function () {
        //more stuff not inportant
    }).catch(e => {
        console.error('error', e);
    });
    array.splice(index,1)
})
Run Code Online (Sandbox Code Playgroud)

我想知道有没有更好的解决方案来解决这个问题?

javascript asynchronous fetch

1
推荐指数
1
解决办法
4072
查看次数

标签 统计

javascript ×2

asynchronous ×1

fetch ×1

php ×1

puppeteer ×1

xampp ×1