三分醉博客
  • 首页
  • Affiliate Marketing
    • Adsense系列教程
    • Facebook广告投放
    • Youtube基础入门
  • 程序语言
  • 工具与技巧
  • 三分醉随笔
  • 联系方式
  1. 首页
  2. 指纹浏览器系列教程
  3. 正文

【指纹浏览器系列】六、node.js库Puppeteer改变浏览器指纹信息

2022年03月31日 5192点热度 7人点赞 0条评论

浏览器插件形式改变指纹

指纹浏览器系列教程目录:
一、指纹浏览器的原理与应用
二、浏览器指纹的检测与对抗的办法
三、更多的检测手段与指纹浏览器选购方案
四、命令行形式浏览器多开解决方案
五、浏览器插件形式改变指纹
六、node.js库Puppeteer改变浏览器指纹信息
七、python改变浏览器指纹信息
八、java、go、c#、php、rust更改浏览器指纹信息
九、编写自己的指纹浏览器以及指纹信息来源
十、闲话聊一聊指纹浏览器的用途

puppeteer实在是太有名了,这里就不做多的介绍了,总之就是谷歌官方给谷歌浏览器配套的自动化测试工具。
具体使用教程太多了,这里就不讲那些基础的了,只是说下如何伪装浏览器的指纹。
因为puppeteer太有名,用的人多,所以就有人给它开发了第三方的插件。
今天我们要说的插件就是https://github.com/berstend/puppeteer-extra 这个库里面的stealth。
地址:
https://github.com/berstend/puppeteer-extra/blob/master/packages/puppeteer-extra-plugin-stealth
它通过勾住browser的page创建过程,将反指纹检测js代码插入到page里,做到伪装或隐藏浏览器指纹的作用。
具体步骤:
安装这些库npm install puppeteer puppeteer-extra puppeteer-extra-plugin-stealth
运行代码

// puppeteer-extra is a drop-in replacement for puppeteer,
// it augments the installed puppeteer with plugin functionality
const puppeteer = require('puppeteer-extra')

// add stealth plugin and use defaults (all evasion techniques)
const StealthPlugin = require('puppeteer-extra-plugin-stealth')
puppeteer.use(StealthPlugin())

// puppeteer usage as normal
puppeteer.launch({ headless: true }).then(async browser => {
  console.log('Running tests..')
  const page = await browser.newPage()
  await page.goto('https://bot.sannysoft.com')
  await page.waitForTimeout(5000)
  await page.screenshot({ path: 'testresult.png', fullPage: true })
  await browser.close()
  console.log(`All done, check the screenshot. ✨`)
})

默认不设置浏览器是以无界面的headless模式运行的,而这个模式下,网站是可以知道你是在这种爬虫模式而非正常人访问模式的,也就是js可以检测到webdriver为true。
那么当加载了这个stealth插件后,网站就不会检测到这些信息了,非常好用。
下面是不使用stealth插件在无头模式下访问指纹检测网站的截图:
file
下面是使用stealth插件后访问在线指纹检测网站的截图:
file

可以看到对比相当明显,这个插件虽然好用,但是它里面的指纹信息都是固定的,没法自定义,如果需要自定义就需要对这个插件进行二次开发了。
puppeteer-extra这个插件里面还有adBlocker和反谷歌验证码等功能,非常强大,有需要的可以都去尝试下。

本文由三分醉博客原创,转载请注明:https://www.sanfenzui.com/node-js-library-puppeter-changes-browser-fingerprint-information.html

文章同步更新在知乎:三分醉 - 知乎

本作品采用 知识共享署名-非商业性使用 4.0 国际许可协议 进行许可
标签: node.js puppeteer puppeteer 指纹浏览器 浏览器指纹
最后更新:2022年03月31日

三分醉

https://www.sanfenzui.com/about-me

点赞
< 上一篇
下一篇 >
2TB终身网盘
建了个群,想一起交流的可以加入下
最新 热点 随机
最新 热点 随机
解决中文Windows11编译chromium过程中报错gbk问题 什么人必须买抗投诉服务器DMCA Ignored Hosting APP里面增加cloak的跑法可行性研究 Facebook Dating友缘是什么账号,能用来干什么? 【指纹浏览器系列】十、闲话聊一聊指纹浏览器的用途 【指纹浏览器系列】九、 编写自己的指纹浏览器以及指纹信息的来源
什么人必须买抗投诉服务器DMCA Ignored Hosting 中文博客英文垃圾评论过多,博客开启akismet垃圾评论管理插件的设置 【指纹浏览器系列】五、浏览器插件形式改变指纹 如何在屏蔽了右键和选中文本的网页上复制文本 如何使用TrafficArmor的self-hosted JavaScript部署方式 解决中文Windows11编译chromium过程中报错gbk问题
标签聚合
浏览器指纹 markdown插件 Youtube Adsense 指纹浏览器 Adsense TrafficArmor facebook广告投放 pyppeteer

COPYRIGHT © 2020 三分醉博客. ALL RIGHTS RESERVED.

THEME KRATOS MADE BY VTROIS

关于我: about-me 友情链接: 三分醉的小伙伴们