javascript - 剧作家禁用网页缓存,以便我可以在向下滚动后获取新元素

标签 javascript web-scraping puppeteer playwright

我正在使用 playwright(Firefox 浏览器)来抓取一些网站。当我向下滚动页面时,许多网站会加载更多内容。问题是 await page.$$("") 方法没有获取加载的新内容。

但是如果我在滚动后在控制台上执行 document.querySelectorAll("") ,那么我也可以获得更新的内容。

我看到 puppeteer 有一个设置 page.setCacheEnabled(enabled) 允许禁用缓存,但我在 playwright 中找不到类似的东西。

最佳答案

你说得很对,剧作家中没有像setCacheEnabled这样的方法。一种解决方法是为所有请求设置一条路由:

page.route('**', route => route.continue());

您可以看到here那:

Enabling routing disables http cache.

这应该完成同样的事情。

关于javascript - 剧作家禁用网页缓存,以便我可以在向下滚动后获取新元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68522170/

相关文章:

javascript - knockoutjs 从 root-viewModel 调用子 viewModel 中定义的函数

javascript - 如何将简单的ID(jquery ajax)发布到asp.net mvc中的Action方法

python - 使用 scrapy 在多页上递归获取链接

html - 如何使用 powershell 将 HTML 表转换为具有相同结构的 CSV 文件

javascript - puppeteer/chromium 由于内存不足导致服务器崩溃

javascript - 如何在移动网络应用程序中滚动 div 的内容?

javascript - 通过索引分配对表进行排序

php - 简单的 DOM file_get_html 不返回任何内容

node.js - 如何为 Puppeteer 设置 --shm-size 配置

javascript - 加载共享库时出错 : libgbm. so.1:无法打开共享对象文件:AWS EC2 实例上 Nodejs 中的 Puppeteer