Diagnosio terfynau amser proxy Puppeteer yn ôl cais a charreg filltir y dudalen
Defnyddiwch requestfailed ar gyfer methiannau rhwydwaith a statws HTTPResponse ar gyfer ymatebion gweinydd cyn beio'r proxy am lywio tudalennau llawn araf.
Ymateb cyflym o curl neu Axios yw un adnodd fel arfer. Gall Puppeteer hefyd nôl sgriptiau, delweddau, ffrâmau ac APIau ar draws sawl gwesteiwr, a disgwyl am garreg filltir dudalen hwyrach.
Gyda'r proxy eisoes wedi'i ffurfweddu ar y dudalen bresennol, arsylwch fethiannau unigol yn ystod llywio:
page.on("requestfailed", request => {
console.log(request.url(), request.failure()?.errorText);
});
await page.goto(targetUrl, {
waitUntil: "domcontentloaded",
timeout: 30000,
});Rhedwch hyn yn y llif gwaith async gyda'r targetUrl go iawn. Mae'r enghraifft yn disgwyl am DOMContentLoaded, sy'n gynt na chwblhau pob delwedd ofynnol neu ymateb cymhwysiad hwyrach. Cymharwch y garreg filltir honno â'r un y disgwyliai'r llywio gwreiddiol amdani: dogfen brif, DOM, load neu lonyddwch rhwydwaith yw canlyniadau gwahanol.
Nid yw ymateb 403 neu 500 yn ddigwyddiad requestfailed. Darllenwch y statws drwy HTTPResponse hefyd.
Defnyddiwch yr arsylwadau i adnabod adnodd araf neu a wrthodwyd, dilysu ailadroddus neu amod aros hwyrach. Nid yw terfyn amser hirach yn gwneud dim ond ymestyn yr aros; nid yw'n lleihau gwaith y porwr nac yn profi bod pob cysylltiad adnodd wedi'i dderbyn.