Ошибка ОС Deno Puppetteer 13 Отказано в разрешении

#javascript #typescript #puppeteer #deno

Вопрос:

Я строю гусеничный движок для платформы разведки, которую я строю (https://github.com/yugely/Pelican). У меня работает функция выборки, но я понял, что мне нужен кукловод, чтобы делать больше, чем выборка, учитывая использование JS.

Я использую mac OSX Big Sur 11.6

Код: он начинается в файле mod.ts, куда он переходит:

дирижер.тс

 export async function conduct_crawl(gen_object:GenerationalObject){
        try {
            let object_exists = await r_client.hexists(gen_object.gen_key.origin_timestamp, gen_object.gen_key.url.href)
            if(object_exists === 0) {
                console.log(gen_object.gen_key.url.href)
                //limit(() =>
                    http_call(gen_object)//****here******
                    .then(crawl)
                    .then(book_crawl)
                    .catch(function (error) {
                        console.error(error)
                    })
                //)
            }
        }catch(error){
            console.error(gen_object)
            console.error(error)
            let funnel_point = "conductor.ts"
            let funk = "conduct_cat"

        }
}
 

Проводник вызывает метод http-вызова в файле radio_flyer.ts, который выглядит следующим образом

 export async function http_call(gen_object:GenerationalObject):Promise<GenerationalObject> {
        return new Promise(async function (resolve, reject) {
                    if (gen_object.gen_key !== undefined) {
                        try {
                            const browser = await puppeteer.launch();
                            const page = await browser.newPage();
                            await page.goto(gen_object.gen_key.url.href);
                            const html = await page.content();
                            if(html.length > 0) {
                                gen_object.relational_object.response_content.response_text = html
                                gen_object.gen_key.can_cat = true
                                gen_object.gen_key.catalogue_key.status = StatusEnum.ACTIVE
                                resolve(gen_object)
                            }

                        } catch(error) {
                            reject(error)
                        }

                    }
        })
}

 

Когда я выполняю команду

 $ deno run -A --unstable mod.ts
 

Я получаю следующую ошибку:

 PermissionDenied: Permission denied (os error 13)
    at Object.opSync (deno:core/01_core.js:138:12)
    at opRun (deno:runtime/js/40_process.js:27:17)
    at Object.run (deno:runtime/js/40_process.js:114:17)
    at BrowserRunner.start (https://deno.land/x/puppeteer@9.0.2/src/deno/BrowserRunner.ts:63:22)
    at ChromeLauncher.launch (https://deno.land/x/puppeteer@9.0.2/src/deno/Launcher.ts:108:12)
    at async file:///path/to/radio_flyer.ts:30:45

 

I can’t find out why I would have this. I am using a Deno port.
https://deno.land/x/puppeteer@9.0.2

Any help or suggestions are appreciated.