起因:
爬取一个页面,有js加密。浏览器打开不行。如下:
解决方案:
1、chrome远程调试:
- 微信浏览器 开启远程调试
https://x5.tencent.com/tbs/guide/debug/faq.html - Android 设备的远程调试入门
https://developers.google.com/web/tools/chrome-devtools/remote-debugging/webviews?hl=zh-cn
浏览器输入 chrome://inspect/#devices
点击inspect
需要"fan"过那一道看不见的“樯”,不然404,
ojbk:
可以照常调试了
其他app的调试
WebViewDebugHook
但是这个调试方法有一个前提,就是APP自身必须调用WebView.setWebContentsDebuggingEnabled(true); 才会允许被DevTools调试,毕竟这是一个给开发者在开发阶段调试自身应用的功能,而不是提供给你窥探别人APP内容的工具,出于安全考虑,当然不可能随便调试别人的应用。
但是
有条件要上,没有条件创造条件也要上!
Root手机,安装Xposed框架,使用WebViewDebugHook模块干它
WebViewDebugHook项目源代码:https://github.com/feix760/WebViewDebugHook
其实也可以自行编写Xposed模块,这里毕竟很简单,只需要在目标APP进程中调用静态方法 WebView.setWebContentsDebuggingEnabled(true); 就打开了调试大门。当然,使用WebViewDebugHook的理由是懒惰,拿来就用。同时WebViewDebugHook针对腾讯的部分加壳做了处理,可用性更高。
部分抄自这个博客