JS HTML转义码解码
- 背景:
- JQ的html()函数得到网页的html源码,而有时得到的文本中的中文会以HTML转义码的形式出现:如“转发”被编码成了“& #x8F6C;& #x53D1;”。(这里&和#之间加了空格,否则会直接显示为中文)
- 而使用text()函数又会丢失网页的元素信息,所以想原生的保留网页信息只能进行手工解码。
- 原理:
- 这种编码方式使用的编码为unicode,在&#和;之间的十六进制数即为该字符的unicode编码。
- 造轮子:
- String.fromCharCode()方法,该方法接受一个unicode值,返回该值代表的字符。
- JS字符串正则替换支持str.replace(reg, function(text){})的形式。
function decodeHtml(_str){var s = _str.replace(/&#x[\dA-F]{2,4};/g, function(_hex){return String.fromCharCode('0' + _hex.slice(2, -1));});return s;
}
原理都清楚了轮子也很简单
nodejs测试通过
JS HTML转义码解码相关推荐
- qrcode.min.js生成二维码以及reqrcode.js二维码解码
生成二维码 1.引入js qrcode.min.js ,下载地址:https://download.csdn.net/download/weixin_43830264/87472390 2.根据需求设 ...
- js encodeuri转码和解码
js encodeuri转码和解码教程如下: 输入一段html代码 实现结果:将代码加密 js实现代码如下: /*! JSFuck 0.4.0 - http://jsfuck.com */(funct ...
- js前端base64转码解码
我们为什么要用base base64是网络上最常见的用于传输8bit字节代码的编码方式之一.有时我们需要把二进制数据编码为适合放在URL中的形式.这时采用base64编码具有不可读性,即所编码的数据不 ...
- Python反反爬之JS混淆---源码乱码(详细教程)
写在前面 很早之前在吾爱破解论坛上看见了[猿人学]Web端爬虫攻防大赛,当时进入他们官网的时候,比赛已经结束了.看着那些题目还挺有意思的,但由于各种原因一直没有机会去做那些题目.最近比较闲,就去把猿人 ...
- URL--编码解码那些事
URL--编码解码那些事 1 JS对URL字符串进行编码/解码分析 1.1 为什么要对URL编码和解码? 1.2 js对URL编码和解码 1.2.1 escape() 1.2.2 encodeURI( ...
- html转义es,Js特殊字符转义之htmlEscape()方法
为了防止XSS攻击,常常需要将用户输入的特殊字符进行转义,原生js貌似还没有直接对其专业的方法,最近再读Js高级程序设计的时候刚好看到,碰巧项目中也刚好需要使用次方法,于是就之家搬来用了. 网上关于转 ...
- 猿人学js混淆-源码乱码解法总结
猿人学js混淆-源码乱码解法总结 网址 解法 心得 网址 js混淆-源码乱码网址 解法 我是在360浏览器下打开网址,进入审查元素. 打开第2页 发现请求网址为:http://match.yuanre ...
- App.Config 和 WebConfig 特殊字符的转义码对应关系
Web.Config默认编码格式为UTF-8,对于XML文件,要用到实体转义码来替换.对应关系如下: 字符 转义码 & 符号 & & 单引号 ' ' 双引号 " &q ...
- js技巧--转义符\的妙用
js技巧--转义符"\"的妙用 // blueDestiny, never-online // blueDestiny [at] 126.com 通常,我们在动态给定一个conta ...
最新文章
- Spring事务管理机制
- ubuntu 16.04 安装MySQL Workbench
- 鸿蒙os2.0公测结束了,鸿蒙OS2.0系统公测版发布时间-鸿蒙OS2.0系统公测版适配机型推荐...
- 逆向so_记一次APP的so层算法逆向(七)
- LeetCode 826. 安排工作以达到最大收益(map)
- Windows下Jenkins的详细安装及使用
- Qt之QToolBox
- Nginx教程1:基本概念
- java简历制作注意点
- android adb驱动win7,win7 64位adb驱动怎么安装_win7安装abd驱动的方法图文步骤
- Isabelle定理证明器
- HTML5前端开发实战08-外语培训
- 【TensorRT】PyTorch模型转换为ONNX及TensorRT模型
- 逻辑移位和算术移位的区别
- java 流 改变编码_Java-IO流之转换流的使用和编码与解码原理
- mac下安装redis 和 redis可视化工具rdm并且连接redis
- 概率论与数理统计练习
- java中八进制常量是什么意思_Java 负的十六进制与八进制字面常量
- 微信支付:小程序支付/扫码支付
- python基础讲解:代码规范判断语句循环语句