背景:在使用Puppeteer爬虫的时候发现有些网页在Puppeteer打开的网页中展示不全,而在普通谷歌浏览器中显示没问题,为了解决这个问题所以需要直接在现有已经打开的浏览器上直接开启爬虫。
1.为了保证顺利链接我们需要设置Chrome浏览器的启动端口
谷歌浏览器 右键快捷方式设置目标中的内容:在最后空格后添加 --remote-debugging-port=9222
http://localhost:9222/json/version打开链接看看是否接通,不接通尝试关闭浏览器重启
2.配置修改
let wsKey = await axios.get('http://localhost:9222/json/version');
let browser=await puppeteer.connect({
browserWSEndpoint: wsKey.data.webSocketDebuggerUrl,
defaultViewport:null
});
let page=await browser.newPage()
await page.goto('https://blogweb.cn');
使用axios获取对应链接(http://localhost:9222/json/version)的通信配置传入puppeteer配置(链接中的端口号需要和Chrome目标路径中的端口号对应)
后面就是基本的创建页面页面滚动以及页面跳转的配置了