Selenium 无头模式和 WASM。如何从网站运行 WebAssumbly 代码并获得结果?

问题描述 投票:0回答:0

我正在使用 selenium-wire 进行 parce(没有不安全的做法或 ddos 方法)一个带有验证码的网站。
在具有图形界面的浏览器中验证码不设置(IE 除外),因为请求标头包含参数“wasm”,cookie 中包含 32 个字符的代码(生命周期约为 5 分钟)。据我了解,在浏览器中从网站运行一些 WebAssumbly 代码后,此参数设置在我这边。
Selenium 作为 Chrome 在 ubuntu-server(没有用户界面)上运行。我在我的标头请求中设置了自定义参数(隐藏无头模式),但我无法在 cookie 中设置当前的“wasm”,因为我应该首先在我这边运行(不知道如何)wasm 代码,获取参数和把它放在饼干上。

-----

如果我在 Windows 电脑上打开网站,我可以从请求 cookie 中复制 wasm 参数并将其设置为我的服务器端代码并且它可以工作(不超过 5 分钟:))我看到 .wasm 文件(在网络 chrome 中开发模式选项卡)。

我的服务器端请求后没有任何 cookie 的网站响应。
注意内容类型

server: ...
strict-transport-security: max-age=86400
content-security-policy: upgrade-insecure-requests;
set-cookie: __ddg1_=UYBpAaUACXEpJWP8M5a3; Domain=...; HttpOnly; Path=/; Expires=Sun, 03-Mar-2024 20:33:55 GMT
content-type: application/wasm
last-modified: Tue, 23 Aug 2022 11:23:22 GMT
accept-ranges: bytes
etag: "071bec0e2b6d81:0"
set-cookie: .ASPXAUTH=fixcookie; domain=...; path=/; expires=Tue, HttpOnly
date: Sat, 04 Mar 2023 20:33:55 GMT
content-length: 308233
content-security-policy: upgrade-insecure-requests

请求 cookie 中的动态 WASM 参数(例如)

wasm=771ac3c59bdf3a49811c296ec781568a;
python selenium-webdriver selenium-chromedriver webassembly
© www.soinside.com 2019 - 2024. All rights reserved.