Сбой запроса страницы кукловода только на экземпляре AWS EC2 - PullRequest
0 голосов
/ 10 апреля 2020

Я написал небольшую javascript программу с использованием узла (v12.16.2) и кукловода (v2.1.1), которую я пытаюсь запустить на экземпляре AWS EC2. Я делаю ссылку на URL, добавленный к этому. Он отлично работает на локальной (не AWS) linux машине с аналогичными версиями, но на EC2 происходит сбой, вообще не показывая страницу. Я пробовал работать с headless = false и devtools = true. В консоли браузера я вижу следующее:

Uncaught TypeError: Невозможно прочитать свойство 'length' не определено в il_Ev (rs = ACT90oFtPziyty36T_zhgMUEStuCtJgAkQ: 1862) в il_Hv (rs = ACT90oFtKGTyGGTUGYG36) Initialize (Rs = ACT90oFtPziyty36T_zhgMUEStuCtJgAkQ: 1867) в il__i (Rs = ACT90oFtPziyty36T_zhgMUEStuCtJgAkQ: 270) в il_Gl.il_Wj.H (Rs = ACT90oFtPziyty36T_zhgMUEStuCtJgAkQ: 322) при Rs = ACT90oFtPziyty36T_zhgMUEStuCtJgAkQ: 1869

Как я уже говорил, это тот же код отлично работает на другом компьютере linux и только что загружен в браузер; без ошибок Я в тупике. Кто-нибудь знает, что может происходить? Другие страницы, такие как google.com, прекрасно загружаются в EC2, к вашему сведению. TIA.

Рейд

https://www.google.com/imgres?imgurl=https%3A%2F%2Fimg-s-msn-com.akamaized.net%2Ftenant%2Famp%2Fentityid%2FAACPW4S.img%3Fh%3D552%26w%3D750%26m%3D6%26q%3D60%26u%3Dt%26o%3Df%26l%3Df%26x%3D992%26y%3D672&imgrefurl=https%3A%2F%2Fwww.msn.com%2Fen-us%2Flifestyle%2Fpets-animals%2F49-adorable-puppy-pictures-that-will-make-you-melt%2Fss-AACSrEY&tbnid=Ad7wBCCmAXPRDM&vet=12ahUKEwig1NfB0Y7oAhXGHc0KHSzuCMUQMygeegQIARBw..i&docid=jawDJ74qdYREJM&w=750&h=500&q=puppies&ved=2ahUKEwig1NfB0Y7oAhXGHc0KHSzuCMUQMygeegQIARBw

Вот выдержка из соответствующего кода, который довольно прост:

   const browser = await puppeteer.launch({
       headless: false,
       devtools: true,
       slowMo: 150
    });
   await browser.userAgent(
      "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.181 Safari/537.36"
   );
   /* Get the first page rather than creating a new one unnecessarily. */
   let page = (await browser.pages())[0];
   await page.setViewport({
      width: 1524,
      height: 768
   });
   try {
await page.goto("https://www.google.com/imgres?imgurl=https%3A%2F%2Fimg-s-msn-com.akamaized.net%2Ftenant%2Famp%2Fentityid%2FAACPW4S.img%3Fh%3D552%26w%3D750%26m%3D6%26q%3D60%26u%3Dt%26o%3Df%26l%3Df%26x%3D992%26y%3D672&imgrefurl=https%3A%2F%2Fwww.msn.com%2Fen-us%2Flifestyle%2Fpets-animals%2F49-adorable-puppy-pictures-that-will-make-you-melt%2Fss-AACSrEY&tbnid=Ad7wBCCmAXPRDM&vet=12ahUKEwig1NfB0Y7oAhXGHc0KHSzuCMUQMygeegQIARBw..i&docid=jawDJ74qdYREJM&w=750&h=500&q=puppies&ved=2ahUKEwig1NfB0Y7oAhXGHc0KHSzuCMUQMygeegQIARBw", {
            timeout: 0,
//            waitUntil: ["load"]
//            waitUntil: ["networkidle2"]
});
     await page.waitForSelector('#irc_shc', {
        visible: true,
        timeout: 0
     });
   } catch(e) {
      console.log("error: e = ", e);
   }

1 Ответ

0 голосов
/ 16 апреля 2020

Оказывается, это просто временная ошибка на странице Google.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...