1.6 KiB
1.6 KiB
TMWebDriver SOP
- 禁止import,直接用web_scan/web_execute_js工具。本文件只记录特性和坑。
- 底层:
../TMWebDriver.py通过Tampermonkey脚本接管用户浏览器(保留登录态/Cookie) - 非Selenium/Playwright,不需调试浏览器或新数据目录
- 支撑
web_scan(只读DOM) /web_execute_js(执行JS) 等高层工具
限制(isTrusted)
- JS dispatch的事件
isTrusted=false,敏感操作(文件上传/部分按钮)会被浏览器拦截 - 文件上传:JS无法填充
<input type=file>,必须ljqCtrl物理点击+Win32轮询文件对话框- 流程:SetForegroundWindow→ljqCtrl点上传按钮→FindWindow轮询对话框→输入路径→轮询关闭
- 结论:读信息+普通操作用TMWebDriver;文件上传等敏感操作需配合ljqCtrl
导航
web_scan仅读当前页不导航,切换网站用web_execute_js+location.href='url'
Google图搜
- class名混淆禁硬编码,点击结果用
[role=button]div - web_scan过滤边栏,弹出后用JS:文本
document.body.innerText,大图遍历img按naturalWidth最大取src - "访问"链接:遍历a找
textContent.includes('访问')的href - 缩略图:
img[src^="data:image"]直接提取;大图src可能截断用return img.src
Chrome下载PDF
场景:PDF链接在浏览器内预览而非下载
fetch('PDF_URL').then(r=>r.blob()).then(b=>{
const a=document.createElement('a');
a.href=URL.createObjectURL(b);
a.download='filename.pdf';
a.click();
});
注意:需同源或CORS允许,跨域先导航到目标域再执行