headless now also returns network requests
This commit is contained in:
@@ -31,7 +31,6 @@ async function initHeadless() {
|
||||
"--no-first-run",
|
||||
"--no-zygote",
|
||||
"--single-process",
|
||||
|
||||
"--disable-software-rasterizer",
|
||||
"--disable-client-side-phishing-detection",
|
||||
"--no-default-browser-check",
|
||||
@@ -85,6 +84,15 @@ async function scrape(url, handler, options = {}) {
|
||||
if (!browser) await initHeadless();
|
||||
|
||||
const page = await context.newPage();
|
||||
const requests = [];
|
||||
|
||||
page.on("request", req => {
|
||||
requests.push({
|
||||
url: req.url(),
|
||||
method: req.method(),
|
||||
type: req.resourceType()
|
||||
});
|
||||
});
|
||||
|
||||
await page.route("**/*", (route) => {
|
||||
const req = route.request();
|
||||
@@ -137,8 +145,8 @@ async function scrape(url, handler, options = {}) {
|
||||
await new Promise(r => setTimeout(r, renderWaitTime));
|
||||
}
|
||||
|
||||
return await handler(page);
|
||||
|
||||
const result = await handler(page);
|
||||
return { result, requests };
|
||||
} catch (error) {
|
||||
console.error(`Error durante el scraping de ${url}:`, error);
|
||||
return null;
|
||||
|
||||
Reference in New Issue
Block a user