puppeteer 在所选页面上执行 js 函数
puppeteer execute a js function on the chosen page
这是分析过的页面 https://www.diretta.it/。
本页后面几天的内容都是用js动态加载的,不改变本站URL(你可以在table右上角试试)。
使用puppeteer,代码如下
await page.goto ('https://www.diretta.it/');
它加载今天页面的内容。
有没有办法用明天的内容加载页面?
我必须从接下来几天的比赛中抓取信息
更改日终端的 js executable 函数是:
> set_calendar_date ('1')
您要查找的是 page.evaluate()
函数。
此函数允许您 运行 页面上下文中的任何 JS 函数。
简单来说,运行ning page.evaluate()
类似于打开开发工具并直接在其中写入 set_calendar_date('1')
。
这是一个工作片段,如果您想亲眼看到它的工作,请不要犹豫,将 {headless: false}
传递给 puppeteer.launch()
。
(async () => {
const browser = await puppeteer.launch();
const page = await browser.newPage();
await page.goto('https://www.diretta.it/');
await page.evaluate(() => {
set_calendar_date ('1');
});
await page.waitFor(500); //Wait a bit for the website to refresh contents
//Updated table is now available
})();
这是分析过的页面 https://www.diretta.it/。
本页后面几天的内容都是用js动态加载的,不改变本站URL(你可以在table右上角试试)。
使用puppeteer,代码如下
await page.goto ('https://www.diretta.it/');
它加载今天页面的内容。 有没有办法用明天的内容加载页面? 我必须从接下来几天的比赛中抓取信息
更改日终端的 js executable 函数是:
> set_calendar_date ('1')
您要查找的是 page.evaluate()
函数。
此函数允许您 运行 页面上下文中的任何 JS 函数。
简单来说,运行ning page.evaluate()
类似于打开开发工具并直接在其中写入 set_calendar_date('1')
。
这是一个工作片段,如果您想亲眼看到它的工作,请不要犹豫,将 {headless: false}
传递给 puppeteer.launch()
。
(async () => {
const browser = await puppeteer.launch();
const page = await browser.newPage();
await page.goto('https://www.diretta.it/');
await page.evaluate(() => {
set_calendar_date ('1');
});
await page.waitFor(500); //Wait a bit for the website to refresh contents
//Updated table is now available
})();