当前位置: 首页 > news >正文

sdenv获取瑞数6后缀

使用草木一秋大佬的项目:https://github.com/pysunday/sdenv

孪生项目:https://github.com/pysunday/rs-reverse

本人使用的是docker映射本地文件的方式在Linux运行

主要逻辑:

  • 在加载网页内部js(瑞数初始化)前重写open,因为瑞数js关于后缀的open是已经重写的,所以要在瑞数重写open之前重写open
  • 瑞数初始化以后,再手动发起请求

步骤:

  • 将项目克隆到Linux,cd进入sdenv
  • 修改/example/use-remote/index.js

 重写loadPagesSecond

 const {window, sdenv} = await jsdomFromUrl(url, {cookieJar,userAgent,consoleConfig: {error: new Function},});/*=== 重写 XMLHttpRequest,只拦截,不请求 ===因为瑞数后缀是重写了open,所以要在瑞数重写之前重写open*/const originalOpen = window.XMLHttpRequest.prototype.open;window.XMLHttpRequest.prototype.open = function (method, requestUrl, async, user, password) {this._requestUrl = requestUrl;this._method = method;// 关键:彻底阻止 send,替换为空函数this.send = function (body) {logger.info(`[拦截成功] URL: ${this._requestUrl}`);// 模拟一个“完成”状态,防止页面卡死setTimeout(() => {this.readyState = 4;this.status = 0;  // 或 200,取决于想模拟什么if (this.onreadystatechange) {this.onreadystatechange();}}, 0);};return originalOpen.call(this, method, requestUrl, async, user, password);};

 新增手动发送请求代码(只获取URL,不发送请求),借鉴了草木一秋大佬的代码

// 手动发起请求 xhr 触发重写的 open 和 sendconst xhr = new window.XMLHttpRequest();xhr.open("POST", 'http://epub.cnipa.gov.cn/Dxb/PageQuery', false);xhr.setRequestHeader('Accept', 'application/json');xhr.onreadystatechange = function () {// 此时的responseURL和responseText应该都为空,因为已经被重写的open拦截logger.debug("url:", xhr.responseURL);logger.debug("responseText:", xhr.responseText);// 状态变化: 1 0  1是被拦截,4是未拦截logger.debug('状态变化:', xhr.readyState, xhr.status);};try {xhr.send(); // 触发定义的日志} catch (e) {logger.error('发送请求失败:', e);}
  • docker运行
docker run --rm -v $(pwd)/example/use-remote:/app crpi-vkjftqt0qsdk2jmc.cn-shanghai.personal.cr.aliyuncs.com/pysunday/sdenv-x86_64:1.0.0 /app/index.js

image

http://www.gsyq.cn/news/35542.html

相关文章:

  • 2025年口碑好的玻璃钢储罐行业内知名厂家排行榜
  • 2025年评价高的红木家具厂家推荐及选择参考
  • CF498D Traffic Jams in the Land
  • 2025年优秀的佛山负氧离子床垫行业内知名厂家排行榜
  • 2025年广东回收基恩士传感器公司权威推荐榜单:回收得利捷读码器/回收扫描平台/回收二维码读码器服务商精选
  • 2025年评价高的金属光纤槽厂家最新热销排行
  • 2025年优秀的绕线机厂家最新推荐权威榜
  • 2025年质量好的封边条优质厂家推荐榜单
  • 每日坚持读一段英文,熟悉英文表达-2025-10-30
  • 2025年诚信的上海天幕LED显示屏厂家最新实力排行
  • 2025 年铸铁井盖生产厂家最新推荐排行榜:聚焦球墨、五防、可调式等多类型产品,精选优质企业
  • 2025年比较好的立式明装风机盘管行业内口碑厂家排行榜
  • AI条形码插件制作条码脚本EAN13种标准Code交叉二五码支持Win/Mac
  • 2025年热门的岩棉板厂家推荐及采购参考
  • 2025年靠谱的滚筒输送机TOP实力厂家推荐榜
  • 10.31博客
  • [笔记]Manacher 算法
  • 2025年质量好的无尘起重机TOP实力厂家推荐榜
  • 2025年知名的无人化束带机厂家最新TOP实力排行
  • 2025年靠谱的侧插插入门厂家最新权威推荐排行榜
  • Java-函数式编程-实现分布式锁工具
  • 《刚刚问世》系列初窥篇-Java+Playwright自动化测试-31- 操作日历时间控件-上篇(详细教程) - 北京
  • 2025年智能照明系统定做厂家权威推荐榜单:智能照明控制/智能灯控十大品牌/智能家居照明源头厂家精选
  • 2025年评价高的WHB系列筛土机最新TOP品牌厂家排行
  • 25.10.06
  • 四个月,AI为主,人为辅,一款产品两个知识库!
  • 25.09.17
  • 政府机构跨网文件交换案例分享:构建跨网文件交换统一通道
  • 25.09.15
  • Java 类加载机制 面试题(一)