我有兴趣使用模式窗口抓取网站以选择位置。网站数据取决于在模式窗口中选择的位置。
如何显示模态窗口并选择我有兴趣抓取的位置?
我对Apify很熟悉,我打算使用interceptRequest()回调函数来显示模态窗口并选择它,但是我对如何做不是很熟悉。
我有兴趣使用模式窗口抓取网站以选择位置。网站数据取决于在模式窗口中选择的位置。
如何显示模态窗口并选择我有兴趣抓取的位置?
我对Apify很熟悉,我打算使用interceptRequest()回调函数来显示模态窗口并选择它,但是我对如何做不是很熟悉。
通常,模态在抓取/自动化方面并不特别。您可以等待模态的选择器加载,然后您可以单击以关闭模态或执行任何其他操作。
所以我检查了工作流程,没有什么特别的。我不会包含整个代码。你可以找到关于Apify SDK的详细教程和Puppeteer 的文档,在那里你可以在线找到它的所有功能。
因此,一旦您在handlePageFunction
原始演员或Puppeteer Scraper中,您只需单击 Ver Precio 按钮,等待模式打开,然后填写输入并提交。
await page.click('.verprecio');
await page.waitForSelector('#frmBuscarSucursal2'); // Selector of the modal body
// Alternatively, if this will cause problems, you can just use plain waitFor
// await page.waitFor(5000) // waits 5 secs
// Now we select region
await page.select('#cmbRegiones2', '11'); // Each region has a number value
await page.select('#cmbMunicipio2', '901'); // The same for municipio
// And we submit by clicking on Buscar
await page.click('#btn-modal-buscar2');
如果您想简单地使用Web Scraper,您也可以使用纯 javascript 来管理它,但它通常不如使用 Puppeteer 函数可靠。