Python + Playwright(13): 隐藏浏览器指纹特征 & 绕过网站反爬机制

28 篇文章 16 订阅 ¥29.90 ¥99.00

前言

  • 浏览器指纹技术通过分析用户的浏览器和操作系统信息来识别用户,这包括浏览器类型、版本、插件、屏幕分辨率等;
  • 在自动化测试和爬虫操作中,这些信息可能会暴露脚本的身份,导致被目标网站阻止;
  • Playwright 允许使用者通过 add_init_script 方法在浏览器启动时注入自定义脚本,从而实现浏览器指纹的隐藏,达到跳过网站反爬的目的。

一、方法1:使用 page.add_init_script() 方法隐藏浏览器指纹

1.1 准备工作

确保你已经获得 stealth.min.js 文件,有需要的童鞋请联系我。

1.2 手动检测浏览器信息

打开浏览器,输入网址:https://bot.sannysoft.com
在这里插入图片描述

好的,我来为您介绍如何使用Playwright模拟浏览器获取https://www.nmpa.gov.cn/datasearch/search-result.html的数据。 首先,您需要安装Playwright库。可以使用以下命令在终端中安装: ``` npm install playwright ``` 然后,您可以使用以下代码模拟打开浏览器,导航到目标网站,并搜索数据: ```javascript const { chromium } = require('playwright'); (async () => { const browser = await chromium.launch({ headless: false }); // 打开Chromium浏览器 const page = await browser.newPage(); // 创建一个新页面 await page.goto('https://www.nmpa.gov.cn/datasearch/search-result.html'); // 导航到目标网站 // 等待搜索框加载完成 await page.waitForSelector('.search-input-wrapper input'); // 在搜索框中输入关键字 await page.type('.search-input-wrapper input', '口罩'); // 点击搜索按钮 await page.click('.search-input-wrapper button'); // 等待搜索结果加载完成 await page.waitForSelector('.search-result-list'); // 获取搜索结果 const results = await page.evaluate(() => { const list = []; const elements = document.querySelectorAll('.search-result-list .search-item'); for (const element of elements) { const title = element.querySelector('.search-item-title a').innerText; const date = element.querySelector('.search-item-time').innerText; const link = element.querySelector('.search-item-title a').href; list.push({ title, date, link }); } return list; }); console.log(results); await browser.close(); // 关闭浏览器 })(); ``` 上面的代码首先打开Chromium浏览器,然后导航到目标网站。接着,它等待搜索框加载完成,输入关键字并点击搜索按钮。然后,它等待搜索结果加载完成,并且使用`evaluate`方法获取搜索结果。最后,它将搜索结果打印到控制台中,并关闭浏览器。 希望这可以帮助您获取目标网站的数据!
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

blues_C

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值