nodejs爬虫抓取数据之编码问题
网络编程 2021-07-04 21:48www.168986.cn编程入门
这篇文章主要介绍了nodejs爬虫抓取数据之编码问题的相关资料,需要的朋友可以参考下
cheerio DOM化并解析的时候
1.假如使用了 .text()方法,则一般不会有html实体编码的问题出现
2.如果使用了 .html()方法,则很多情况下(多数是非英文的时候)都会出现,这时,可能就需要转义一番了
类似这些 因为需要作数据存储,所有需要转换
代码如下:
Халк крушит. Новый способ исполнен
大多数都是&#(x)?\w+的格式
所以就用正则转换一番
var body = ....//这里就是请求后获得的返回数据,或者那些 .html()后获取的 //一般可以先转换为标准unicode格式(有需要就添加当返回的数据呈现太多\\\u 之类的时) body=unescape(body.replace(/\\u/g,"%u")); //再对实体符进行转义 //有x则表示是16进制,$1就是匹配是否有x ,$2就是匹配出的第二个括号捕获到的内容,将$2以对应进制表示转换 body = body.replace(/&#(x)?(\w+);/g,function($,$1,$2){ return String.fromCharCode(parseInt($2,$1?16:10)); });
ok ~
了,网上也有很多个转换的版本,适用的就行了
后记
当使用爬虫抓取网页数据时,cheerio模块是经常使用到底,它像jq那样方便快捷
(但有些功能并未支持或者换了某种形式,比如 jq的 jQuery('.myClass').prop('outerHTML') ,cheerio则等价于 jQuery.html('.myClass'))
编程语言
- 宿迁百度关键词排名指南:实现精准营销的关键
- 四川SEO优化怎么做网络推广
- 立昂技术备案老域名收购:如何为您的业务赋能
- 安徽百度关键词seo贵不贵,一般需要多少钱
- 吉林百度快照排名怎么做电话营销
- 多伦新手做SEO怎么做
- 甘肃优化关键词排名推广怎么做论坛营销
- 沙雅SEO网站推广:提升您的在线可见性
- 四川SEO优化如何提升销售额和销售量
- 聂荣网站排名优化:提升网站可见性的全方位指
- 涞水SEO:提升地方企业在线可见性的策略
- 辽宁百度seo排名怎样做网站排名
- 临湘哪有关键词排名优化:提升网站可见度的关
- 黑龙江百度网站优化有没有优惠
- 凉城优化关键词排名推广:提升您的网络可见性
- 萝北整站优化:提升您网站流量和排名的全面指