原理很简单,通过 websocket 通信 https://github.com/inu1255/debugirl
简单写了个服务端,可以获取 V2EX 的用户名。 可以看到跟写 chrome 插件的体验基本一致。
async function start() { let tabs = await chrome.tabs.query({ url: "", }); let tab = tabs[0]; if (!tab) { tab = await chrome.tabs.create({ url: "", index: 0, active: false, }); } if (tab.status != "complete") await waitComplete(tab); let name = await chrome.scripting.executeScript({ target: {tabId: tab.id}, func: function () { return document.querySelector(".bigger").innerText; }, }); console.log("your V2EX username is:", name); }
![]() | 1 Puteulanus 2023-10-19 18:46:33 +08:00 ![]() 和 selenium 比的优势是什么呢 |
2 I3tZ9NgHU44xmaA4 2023-10-19 18:55:25 +08:00 好像不错,能顺滑如丝的跑的话可以用来做电商,爬虫之类? |
3 sakura6264 2023-10-19 21:49:27 +08:00 可以当后门? |
4 qile1 2023-10-20 18:49:56 +08:00 via Android 没明白怎么控制浏览器,能不能实时看到用户点了什么,或者帮助用户点击某个选项提交表单 |
![]() | 5 lqzhgood 2023-10-24 10:09:49 +08:00 看上去的流程是: - 提前写好插件代码 - 让对方安装插件 - 插件后台运行获取数据 - 通过 websocket 发回结果给 server 还是说有个后端管理平台,可以通过 ws 发送任意代码到插件,然后 eval 执行获取结果通过 wx 返回 ? |