Skip to content

gityyge/JsHD-Debugger

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

JsHD调试器 - 体验手机端的F12


  • 🚀 手机端可视化调试页面
  • 💎 一键生成Js代码

软件介绍

JsHD调试器(简称:JH)是一款可视化的网页js调试器,它可以在手机端对网页元素进行可视化编辑并生成js代码,它会让你爱上调教网页的感觉。

👓 编辑可视化

它提倡可视化操作的编辑流程,全部网页元素尽收眼底,让你在编辑网页元素时不需要任何JavaScript知识就可以对网页元素进行编辑

🔧 元素编辑功能强大

它能够对网页元素进行编辑

  • 1.屏蔽删除网页元素
  • 2.输入框自动填写
  • 3.输入框提示编辑
  • 4.模拟点击元素
  • 5.自定义点击链接
  • 6.修改网页图片 ........... 妈妈再也不用担心我不会编辑网页啦~

🐞 智能分析调试模块

JsHD内置Js调试模块能智能分析网页动态元素,如元素的最大悬浮层级、统计cookie、资源数、动态标签、嵌套标签等,无需复杂操作,轻松修改网页信息

📚 Js参考手册

JsHD内置了Js常用方法、属性、事件手册,让小白能够快速上手查阅相关语法

📦 Js模板库

它还支持外接的js模板如 强制去除悬浮广告、网页翻译、点击特效等、飘落特效等 在侧边栏找到js模板库直接导入

🧬 Js自定义调用

在JsHD调试器编辑的任何操作,都可以生成JS代码方便各平台调用等 总之JsHD调试器很强大,修改元素分分钟解决

软件截图

💎 作者独白

🎋梦想的种子

本项目开发之初,只是为了解决能够在手机端可视化屏蔽网页元素的功能,在五年前此功能相当的重要,当时我还是一个不太懂技术的小白,只是想做一款不用电脑,不懂js就能屏蔽各种网页元素的软件,于是开发了JsHD调试器...

🏗️实施与落地

通过不断的学习相关技术JsHD调试器的功能慢慢的完善,当初的只能屏蔽普通的元素到后来能够支持动态屏蔽,处理其他的简单编辑、样式调整、屏蔽悬浮广告、智能导出、js模版库等功能....

👾目前状况

我从以前的不会到会再到熟练,按理说应该会开发的更快,但事与愿违,开发反而是更慢了,随着工作后空闲时间慢慢减少,以前没有技术的时候只是想着如何去实现它,现在却是在设计上、代码质量上,软件维护性、扩展性上面都要做权衡和考量 自己对于软件的设计不再那么单纯,总是想着要开发的很深入,在设计方面总是觉得有点欠缺,这可能是技术成长的必经之路,一个人的能力有限,完不成的事情太多了。

🌈美好的愿景

其实类似Fusion App的软件有很多,但是做网页的封装确实不太友好,如果以后能有一款直接通过网址就能够生成原生布局的App工具的话,那么将极大的减少目前个人对于app的开发成本,让跟多的小白能够做出自己的原生app, JsHD调试器 希望将网页数据分析,动态回调抓取的数据列表,在app客户端将数据适配成模版布局生成app,此时数据列表来源于网页返回,可以将多个网页的数据进行合并映射到app客户端的一个列表。当然这只是一个愿景,如果有感兴趣的小伙伴可以联系作者一起开发新的版本。

📜愿景功能

  • Js的断点调试Hook (Hook各类函数)
  • 自动化分析网页列表数据
  • 适配数据生成布局 并实现打包(生成签名、权限)
  • 数据库板块(数据合并、远程上传等)
  • ....

本项目于2019年左右开始由壹影(Gityyge)独立开发并持续更新维护,当时技术条件有限,用老板Fusion App进行开发,并于2020年左右上架各安卓市场,上架后得到了许多用户的一致认可,在此感谢各位粉丝老铁的关注与支持。 目前我已是一名全职的后端程序员,在工作中需要投入大量的时间精力去研究工作内容,此项目为独立开发,从交互设计到UI(图片&图标设计)再代码的逻辑编写都是一个人完成的,所以没有太多时间对项目进行升级维护,故在此开源。 本项目采用Apache-2.0 license开源协议,具体见详细开源协议...

开源说明 & 代码结构

此项目初代版本开发时间过于久远(2019),许多代码冗余,方法名变量名多为中文,逻辑分支不是非常严谨,望使用者见谅,此项目大部分代码都是远程加载 远程加载代码主要在主页、可视化调试页面,具体详见如下:

  • home_loadstring_os.lua - 加载必要函数功能模块(手册) - 主页
  • home_js_mod_os.lua - 加载js调试模块 - 主页
  • home_start_os.lua - 首页的必要函数(杂七杂八的函数) - 主页
  • debug_funs_os.lua - 公共函数(只用于调试页)-可视化调试页
  • debug_js_grab_os.lua - 爬虫Js抓取数据-可视化调试页
  • debug_main_tools_os.lua - 主要编辑窗(屏蔽元素那个窗口)-可视化调试页
  • debug_plugin_os.lua - 调试插件(如爬虫,需要对单个元素定位的一些插件)-可视化调试页
  • debug_style_edit_os.lua - 样式编辑页面-可视化调试页
  • debug_style_tools_os.lua - 样式弹出对话框(长按下键)-可视化调试页
  • debug_action_track_os.lua - 动作跟踪-可视化调试页

🌈如何使用

page目录下文件夹是每个子页面 注意查看每个文件首行注释 使用的话只需要用FusionApp打开JsHD调试器OS_2.1.9.fas 模版文件 进行编辑即可 至于 page目录下的文件都是从模版文件抽离出来的 文件中带有前缀的都是远程文件,自行编辑

您可以下载fas模版文件并修改内容,注意遵循开源协议,远程文件您需要下载到本地修改代码中的远程地址

注意事项:在测试时需要整体打包

🚀交互原理 & 加密原理

本项目主要是通过webview与js之间进行动态交互,在webview提供了许多监听事件,如网页加载完毕后执行,网页加载前去执行等,在交互前我们需要对DOM环境进行改造也就是初始化(具体见源码),譬如为元素计算特有属性,统计数据,去除CSP等,将远程资源本地化等 当dmo改造完毕后用户才可以操作,如果您想加密软件可以使用动态注入某变量到dom环境实现加密效果,后期操作需要依赖此环境 Js与Lua进行交互可用evaluateJavascript方法 或者 处理webview的监听(对话框、资源加载、控制台等),具体见源码

🦜技术交流

  • JsHD官方QQ群:971820505
  • 壹影QQ:203455278

🧬其他开源项目

Gitee主页

合作 & 招募

如果您想开发类似的创新产品,或者与我的项目愿景情投意合,欢迎联系我(203455278)

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages