当前位置: 首页 > 工具软件 > Web Puppeteer > 使用案例 >

如何避免Puppeteer被反爬

吴才俊
2023-12-01

思路

避免Puppeteer的浏览器特征被检测
即去掉 “webdriver” in navigator 特征

方法1

    await page.setUserAgent(
        "Mozilla/5.0 (Windows NT 6.0) AppleWebKit/536.5 (KHTML, like Gecko) Chrome/19.0.1084.36 Safari/536.5")
    await page.evaluateOnNewDocument('() =>{ Object.defineProperties(navigator,'
                                      '{ webdriver:{ get: () => false } }) }')
    await page.goto('http://abc.com/')

方法2

	await page.goto('http://abc.com/')
    await page.evaluate("""
     () =>{
     Object.defineProperties(navigator,{
     webdriver:{
     get: () => false
     }
     })
     }
     """)

方法3

    browser = await launch({'headless': True, 'args': [
        '--disable-extensions',
        '--hide-scrollbars',
        '--disable-bundled-ppapi-flash',
        '--mute-audio',
        '--no-sandbox',
        '--disable-setuid-sandbox',
        '--disable-gpu',
        '--disable-web-security',
        '--disable-infobars',

    ],
      'ignoreDefaultArgs': ["--enable-automation"], #反爬
                            'devtools': True,
                            'dumpio': True, })
 类似资料: