Puppeteer: l'option de délai passée dans la méthode page.type est écrasée par l'option slowMo passée à la méthode puppeteer.launch

Créé le 14 nov. 2017  ·  3Commentaires  ·  Source: puppeteer/puppeteer

Étapes à reproduire

Parlez-nous de votre environnement :

  • Version Marionnettiste : 0.13.0
  • Version de la plate-forme/du système d'exploitation : macOS Sierra v10.12.6

Quelles étapes vont reproduire le problème?

Le code qui reproduit le problème est :

const puppeteer = require('puppeteer');

async function run() {
  const browser = await puppeteer.launch({
    headless: false,
    slowMo: 250
  });
  const page = await browser.newPage();
  page.setViewport({ width: 1280, height: 700 });
  await page.goto('https://www.labs.octasimo.com/puppeteer/test-page-type-delay.html', {
    waitUntil: 'networkidle0'
  });
  await page.type('.firstname', 'Mickey', {delay: 10});
  await page.type('.lastname', 'Mouse', {delay: 10});
  await page.waitFor(5000);
  await browser.close();
}

run();

quel est le résultat attendu?

Ce marionnettiste respecte l'option delay passée dans la méthode page.type .

Que se passe-t-il à la place ?

delay option page.type est écrasée par l'option slowMo passée à la méthode puppeteer.launch .

Commentaire le plus utile

@aslushnikov
Je pense que nous devrions autoriser des retards individuels. Les navigateurs fonctionnent différemment sur différents processeurs, et il est agréable d'avoir la possibilité de ralentir certaines actions du navigateur pour s'assurer qu'elles produisent les mêmes résultats.

Tous les 3 commentaires

@octasimo , merci d'avoir déposé ceci.

Il n'y a pas d'exception pour l'option slowMo : elle ralentit toutes les interactions entre pptr et le navigateur. Nous aimerions que les choses restent ainsi prévisibles et que la base de code reste simple.

Fermeture pour l'instant ; nous pouvons reconsidérer cela plus tard s'il y a plus de demande.

@aslushnikov
Je pense que nous devrions autoriser des retards individuels. Les navigateurs fonctionnent différemment sur différents processeurs, et il est agréable d'avoir la possibilité de ralentir certaines actions du navigateur pour s'assurer qu'elles produisent les mêmes résultats.

Je pense que nous devrions autoriser des retards individuels. Les navigateurs fonctionnent différemment sur différents processeurs, et il est agréable d'avoir la possibilité de ralentir certaines actions du navigateur pour s'assurer qu'elles produisent les mêmes résultats.

@sojungko c'est ES6 Proxy pour envelopper les objets de Puppeteer afin d'insérer des délais d'attente avant ou après les appels de méthode.

Cette page vous a été utile?
0 / 5 - 0 notes

Questions connexes

historylife picture historylife  ·  3Commentaires

selfrefactor picture selfrefactor  ·  3Commentaires

paulirish picture paulirish  ·  3Commentaires

td0m picture td0m  ·  3Commentaires

vsemozhetbyt picture vsemozhetbyt  ·  3Commentaires