JS解密相关资料

Javascript \x 反斜杠x 16进制 编解码: js 里 \x 开头的通常是16进制编码的数据,下面代码实现编解码: 解码 function decode(str){ return str.replace(/\\x(\w{2})/g,function(_,$1){ return String.fromCharCode(parseInt($1,16)) }); } decode(’\x5f\x63\x68\x61\x6e\x67\x65\x49\x74\x65\x6d\x43\x72\x6f\x73\x73\x4c\x61\x79\x65\x72’) "_changeItemCrossLayer" 编码 function encode(str){ return str.replace(/(\w)/g,function(_,$1){ return "\\x"+ $1.charCodeAt(0).toString(16) }); } encode("_changeItemCrossLayer") "\x5f\x63\x68\x61\x6e\x67\x65\x49\x74\x65\x6d\x43\x72\x6f\x73\x73\x4c\x61\x79\x65\x72" 在线解码地址: 批量  https://jscompress.com/   单个 https://www.mokuge.com/tool/js_x16/

检查代理隐藏效果的几个网址

  https://whatleaks.com/  检查你的IP地址是否有代理迹象,是否属于匿名网络TOR,以及您计算机上的时间设置是否适合您IP的时区 https://whoer.net/  检查Proxy 和 Socks 服务器、给您查看 VPN 服务器的信息、检查IP地址是否被列入到黑色名单、显示 您电脑上Flash 和 Java的启动状态、确定电脑的语言和系统设置、 操作系统和浏览器版本、检查DNS等多种功能 https://2ip.io/privacy/   检查匿名的可能性 https://browserleaks.com/ip  检查浏览器各种信息,包括各种实用浏览器指纹检测 https://www.dnsleaktest.com/  DNS泄露检查 http://www.ip-score.com/ 指纹独立性检查 https://www.ipip.net/ip.html

禁用WEBRTC隐藏真实IP

WEBRTC为什么检测到我的真实IP地址? 首先,您需要认识到通过WebRTC显示 PC/平板电脑/电话的所有IP地址,不是VPN / tor / socks的问题或缺点,但这是浏览器的问题。 WebRTC项目是由Google创建的,主要用于在用户浏览器(p2p连接)之间传输流数据(音频和视频),而无需任何辅助软件(例如Skype)或插件。这使支持WebRTC的浏览器不仅可以访问您的网络(独立于操作系统),而且可以通过STUN协议检测您的公共IP地址和本地IP地址,从而绕过任何类型的NAT建立p2p连接。 目前,已知在浏览器Chrome(版本23起),Firefox(版本22起)和Opera(版本18起)中默认启用了WebRTC,这使得这些浏览器的用户无法使用匿名功能。您应该禁用WebRTC的支持,以阻止它检测您的公共IP地址和本地IP地址。 如何在Firefox中禁用WebRTC: Mozilla Firefox中的WebRTC自Firefox 22开始受支持,并且默认情况下处于启用状态。 要禁用RTCPeerConnection并防止IP地址泄漏,请转到about:config并切换media.peerconnection.enabled到false。 要禁用媒体设备,请同时将media.navigator.enabled和切换media.peerconnection.enabled至false。 如何在Opera中停用WebRTC: 转到“设置”->“更多设置”在“ WebRTC”部分中,选择“在没有代理的情况下停用UDP” 如何在Chrome中禁用WebRTC: 自Chrome 23版起,默认情况下启用Google Chrome和基于Chromium的网络浏览器中的WebRTC,无法禁用;目前尚不知道如何通过浏览器设置在Chrome中禁用WebRTC的方法;为了防止IP地址泄漏,请使用官方的webrtc.org扩展WebRTC Network Limiter。 如何在Android中使用Chrome禁用WebRTC: 在最新版的适用于Android的Chrome浏览器上,即使设置中存在此类选项,也无法禁用WebRTC。如果您需要在Android上使用禁用了WebRTC的浏览器,建议您使用Firefox for Android。您可以根据上面的Firefox说明在其中禁用WebRTC。

python在文本开头插入一行

问题 对于一个文本文件,需要在起开头插入一行,其他内容不变 解决方法 with open(’article.txt’, ‘r+’) as f:     content = f.read()     f.seek(0, 0)     f.write(’writer:Fatsheep\n’+content) 其中字符串’writer:Fatsheep\n’中为要插入的内容。 注意 f.seek(0, 0)不可或缺,file.seek(off, whence=0)在文件中移动文件指针, 从 whence ( 0 代表文件其始, 1 代 表当前位置, 2 代表文件末尾)偏移 off 字节

Python–列表如何去掉最后一个元素

在Python3中列表数据类型的内置方法里有三种方法可以删除列表的最后一个元素: <h3>1、pop方法</h3> list = [1,2,3,4] list.pop() print(list) #[1, 2, 3] 2、del方法 list = [1,2,3,4] del(list[-1]) print(list) # [1, 2, 3] 3、切片 list = [1,2,3,4] list = list[0:-1] print(list) # [1,2,3] 总结: 以上三种方法未在内存处理上进行测试,唯一区别,pop方法和del方法如果对空列表进行操作,会报错中断执行,切片方法不会因此报错,继续保持空列表向下运行

Python实现自动定义变量和赋值

今天遇到一个问题,需要实现一个JS加密代码转位Python <script type="text/javascript">q7z6=3876;k1g7=7882;p6k1=6688;l2l2=1166;t0r8=4339;n4u1=6898;z6t0=6582;r8i9=3406;m3n4=4100;s9c3=5023;z6k1m3=0^q7z6;s9g7z6=1^k1g7;p6d4t0=2^p6k1;u1y5a1=3^l2l2;k1x4h8=4^t0r8;y5j0o5=5^n4u1;j0q7q7=6^z6t0;w3l2k1=7^r8i9;g7a1e5=8^m3n4;b2o5w3=9^s9c3;</script> 先获取到JS定义的内容 html = ‘q7z6=3876;k1g7=7882;p6k1=6688;l2l2=1166;t0r8=4339;n4u1=6898;z6t0=6582;r8i9=3406;m3n4=4100;s9c3=5023;z6k1m3=0^q7z6;s9g7z6=1^k1g7;p6d4t0=2^p6k1;u1y5a1=3^l2l2;k1x4h8=4^t0r8;y5j0o5=5^n4u1;j0q7q7=6^z6t0;w3l2k1=7^r8i9;g7a1e5=8^m3n4;b2o5w3=9^s9c3;’ 然后转为列表,并去掉最后一个空元素, html = html.split(";") html.pop() 然后循环取值赋值 exec(‘{} = {}’.format(kv[0],kv[1])) 实现自动定义变量和赋值 for i in html:       kv = i.split("=")     exec('{} = {}’.format(kv[0],kv[1]))     print(kv[0])

Python正则findall函数捕获分组的问题

Python下 findall()函数在字符串中找到正则表达式所匹配的所有子串,并返回一个列表,如果没有找到匹配的,则返回空列表。 但是如果正则表达式里面有()分组的话,它默认是要返回所有的满足条件的分组,返回元组格式 例如 html = ”’103.216.82.199:6667 174.70.241.7:24385”’ pattern = re.compile(r'(([0-9]{1,3}\.){3}([0-9]{1,3}):[0-9]{1,5})’) proxies = pattern.findall(html) //   [(‘103.216.82.199:6667′, ’82.’, ‘199’), (‘174.70.241.7:24385’, ‘241.’, ‘7’)] 返回的就是包含子组的元组,然后组成列表, 可使用 proxies = [match[0] for match in pattern.findall(html)] //  [‘103.216.82.199:6667’, ‘174.70.241.7:24385’] 获取对应的子组内容 如果需要取消捕获分组的话,对应子组括号加上?: pattern = re.compile(r'(?:(?:[0-9]{1,3}\.){3}(?:[0-9]{1,3}):[0-9]{1,5})’) proxies = pattern.findall(html) //  [‘103.216.82.199:6667’, ‘174.70.241.7:24385’] 结果则返回正则匹配的所有内容

Python 判断字符串开头和

Python判断字符串是否以某个字符开头: 判断字符串site = ‘https://www.houyunbo.com’是否以http开头 site.startswith(‘http’)                      //True startswith 多个参数放入元组,满足其中一个就是True    site.startswith((‘ftp’,’http’))      //True site[:4] ==’http’                              //True   Python判断字符串是否以某个字符结尾 判断字符串site = ‘https://www.houyunbo.com’是否以 .jpg结尾 site.endswith(‘.jpg’)                //True… Read More »

Python常用模块

Flask  Web微内核中文文档: https://dormousehole.readthedocs.io/en/latest/ Jinja文档 http://jinja.pocoo.org/docs Requests 网络请求模块 https://requests.readthedocs.io/zh_CN/latest/index.html Beautiful Soup 4.4.0  数据提取 https://beautifulsoup.readthedocs.io/zh_CN/latest/ Selenium 浏览器测试 http://www.selenium.org.cn/    https://www.selenium.dev/

浏览器对象:navigator 解析

Navigator对象的属性 navigator.appCodeName : 浏览器的代码名; 例如:“Mozilla” 浏览器代码名 navigator.appMinorVersion :浏览器的次级版本 navigator.appName :浏览器的名称 浏览器的名称 navigator.appVersion : 浏览器的平台和版本信息;把该字符串传递给 parseInt() 只能获取主版本号。 浏览器的平台和版本信息 浏览器的主版本号 navigator.browserLanguage :当前浏览器的语言 navigator.cookieEnabled :指明浏览器中是否启用cookie的布尔值 浏览器中是否启用cookie navigator.cpuClass :浏览器系统的CPU等级 navigator.onLine :指明系统是否处于脱机模式的布尔值 浏览器是否处于脱机模式 navigator.platform :运行浏览器的操作平台系统 浏览器的操作平台系统 navigator.systemLanguage :OS使用的默认语言 navigator.userAgent :由客户机发送服务器的user-agent头部的值 浏览器的user-agent navigator.userLanguage :OS的自然语言设置 汇总 windows、iphone、android三大平台的主流浏览器解析 Windows操作系统浏览器系列: IE浏览器系列 特征表现:均以 “mozilla/” 开头,”msie x.0;” 中的x表示其版本; 判断方法:粗略判断可以只检索 “msie x.0;” 字符串即可 Windows版Firefox 特征表现:以”mozilla/x.0″开头,包含”windows nt”,”gecko/”和”firefox/” ;… Read More »