Javascript 从网页抓取标记nodejs中删除空白
我有一个我无法解决的问题。我的网页抓取更具体的网页-它在nodejs,并能够抓取的内容,但由于某些原因,格式并不理想。在console.log中查看时,它有一堆空白。我尝试了.trim和.replace,但并没有真正删除空格。我猜这是因为数据嵌套在div和table格式中。我不知道怎么处理它 我还试图将其保存为数组,但所有的输出都没有被分解,它只是一个数据块。如果这个问题已经有答案,请提供链接并忽略我的帖子 这是代码的副本Javascript 从网页抓取标记nodejs中删除空白,javascript,html,node.js,Javascript,Html,Node.js,我有一个我无法解决的问题。我的网页抓取更具体的网页-它在nodejs,并能够抓取的内容,但由于某些原因,格式并不理想。在console.log中查看时,它有一堆空白。我尝试了.trim和.replace,但并没有真正删除空格。我猜这是因为数据嵌套在div和table格式中。我不知道怎么处理它 我还试图将其保存为数组,但所有的输出都没有被分解,它只是一个数据块。如果这个问题已经有答案,请提供链接并忽略我的帖子 这是代码的副本 var request = require('request'); va
var request = require('request');
var cheerio = require('cheerio');
var URL = 'http://www.hcad.org';
var content = [];
var Tr = [];
request(URL, function(error, response,html){
if(error){
console.log('Error happened: ', error);
}
if (response.statusCode !== 200) {
console.log('Invaled response code returned: ', response.statusCode);
}
var $ = cheerio.load(html);
$('tr').each(function (i, element) {
content = [];
var a = $(this).prev();
var trimmed_a = a.text();
trimmed_a = trimmed_a.trim();
var str = trimmed_a.replace(/(\r\n|\n|\r|\t)/gm, " ");
var newStr = str.replace(/[^\x20-\x7E]/gmi, "");;
content.push(newStr.trim());
console.log(newStr.trim());
});
})
我认为您缺少使用以下建议的空格替换:
我认为您缺少使用以下建议的空格替换:
您可以添加您正在尝试此操作的示例页面吗?它位于URL代码中。您是否使用“替换”为\s来删除空白?请看是的,我有,但它没有给出所需的结果您可以发布所需结果的示例以及您实际得到的结果吗?您可以添加您正在尝试此操作的示例页面吗?它位于代码URL中您是否使用“替换”来删除空白?看到了吗?是的,我有,但它没有给出所需的结果。您可以发布所需结果的示例以及您实际得到的结果吗?我使用了类似的代码,但它没有执行我认为应该执行的sa.replace/\r\n | \r/gm。我没有得到与您发布的结果相同的结果。\s将删除所有空白。您使用的站点有很多空格,不仅是回车符和换行符,\r\n您似乎想删除。我使用了类似的代码,但它没有执行我认为应该执行的sa.replace/\r\n | \r/gm。我没有得到与您发布的结果相同的结果。\s将删除所有空白。您使用的站点有很多空格,不仅是回车符和换行符,\r\n您似乎想要删除。
string = string.replace(/\s\s+/g, ' ');