ການຕອບສະໜອງໄວຈາກ curl ຫຼື Axios ປົກກະຕິແມ່ນຊັບພະຍາກອນດຽວ. Puppeteer ຍັງສາມາດດຶງ script, ຮູບພາບ, frame ແລະ API ຈາກຫຼາຍເຄື່ອງ ແລ້ວລໍຖ້າຈຸດໝາຍໜ້າທີ່ຊ້າກວ່າ.

ເນື່ອງຈາກ proxy ຖືກຕັ້ງຄ່າແລ້ວໃນໜ້າທີ່ມີຢູ່, ໃຫ້ສັງເກດຄວາມລົ້ມເຫຼວແຕ່ລະອັນລະຫວ່າງການນຳທາງ:

page.on("requestfailed", request => {
  console.log(request.url(), request.failure()?.errorText);
});

await page.goto(targetUrl, {
  waitUntil: "domcontentloaded",
  timeout: 30000,
});

ລັນອັນນີ້ໃນ workflow ແບບ async ດ້ວຍ targetUrl ຕົວຈິງ. ຕົວຢ່າງລໍຖ້າ DOMContentLoaded ເຊິ່ງເກີດຂຶ້ນກ່ອນການສຳເລັດຂອງທຸກຮູບທີ່ຕ້ອງການ ຫຼື ການຕອບສະໜອງຂອງແອັບພລິເຄຊັນທີ່ຊ້າກວ່າ. ປຽບທຽບຈຸດໝາຍນັ້ນກັບຈຸດທີ່ການນຳທາງເດີມລໍຖ້າ: ເອກະສານຫຼັກ, DOM, load ຫຼື ຄວາມງຽບຂອງເຄືອຂ່າຍ ເປັນຜົນທີ່ແຕກຕ່າງກັນ.

ການຕອບສະໜອງ 403 ຫຼື 500 ບໍ່ແມ່ນເຫດການ requestfailed. ອ່ານສະຖານະຜ່ານ HTTPResponse ນຳ.

ໃຊ້ການສັງເກດເພື່ອລະບຸຊັບພະຍາກອນທີ່ຊ້າ ຫຼື ຖືກປະຕິເສດ, ການກວດສອບຊ້ຳ ຫຼື ເງື່ອນໄຂການລໍຖ້າທີ່ຊ້າກວ່າ. ການໝົດເວລາທີ່ຍາວກວ່າພຽງແຕ່ຂະຫຍາຍການລໍຖ້າ; ມັນບໍ່ຫຼຸດຜ່ອນວຽກຂອງ browser ແລະ ບໍ່ພິສູດວ່າທຸກການເຊື່ອມຕໍ່ຊັບພະຍາກອນຖືກຍອມຮັບ.

ບົດຄວາມທີ່ກ່ຽວຂ້ອງ