Node.js 如何打开URL';将HTML转换为字符串以搜索特定单词

Node.js 如何打开URL';将HTML转换为字符串以搜索特定单词,node.js,discord.js,Node.js,Discord.js,我想将URL的HTML内容检索到一个字符串中,这样我就可以使用str.search('XXX'),如果XXX在那里,我将执行一个操作 if(fetch(“https://steamcommunity.com/id/“+message.channel.lastMessage) 。然后(res=>res.text()) .then(body=>console.log(body)) //我需要将HTML转换为字符串并使用str.search('找不到指定的配置文件')) { message.chann

我想将URL的HTML内容检索到一个字符串中,这样我就可以使用
str.search('XXX')
,如果XXX在那里,我将执行一个操作

if(fetch(“https://steamcommunity.com/id/“+message.channel.lastMessage)
。然后(res=>res.text())
.then(body=>console.log(body))
//我需要将HTML转换为字符串并使用str.search('找不到指定的配置文件'))
{
message.channel.lastMessage.edit('URL'+message.channel.lastMessage+''未被采用')
}
else{return}
这就是我目前拥有的,任何其他实现同样目标的选择都是受欢迎的

编辑2:

我按照某人的建议运行了将res.text()替换为console.log(res)的代码,输出如下:

$ node index.js
Response {
  size: 0,
  timeout: 0,
  [Symbol(Body internals)]: {
    body: Gunzip {
      _writeState: [Uint32Array],
      _readableState: [ReadableState],
      readable: true,
      _events: [Object],
      _eventsCount: 7,
      _maxListeners: undefined,
      _writableState: [WritableState],
      writable: true,
      allowHalfOpen: true,
      _transformState: [Object],
      _hadError: false,
      bytesWritten: 0,
      _handle: [Zlib],
      _outBuffer: <Buffer 88 e2 7c 69 2e 7f 00 00 e0 35 f4 02 00 00 00 00 b0 d8 eb 02 00 00 00 00 b0 d8 eb 02 00 00 00 00 67 22 2c 20 22 73 68 61 72 64 73 22 3a 20 31 2c 20 22 ... 16334 more bytes>,
      _outOffset: 0,
      _chunkSize: 16384,
      _defaultFlushFlag: 2,
      _finishFlushFlag: 2,
      _nextFlush: -1,
      _defaultFullFlushFlag: 3,
      _info: undefined,
      _level: -1,
      _strategy: 0
    },
    disturbed: false,
    error: null
  },
  [Symbol(Response internals)]: {
    url: 'https://stackoverflow.com/questions/51120073/how-to-send-a-message-to-a-specific-channel',
    status: 200,
    statusText: 'OK',
    headers: Headers { [Symbol(map)]: [Object] },
    counter: 0
  }
}
undefined
$node index.js
回应{
尺寸:0,
超时:0,
[符号(阀体内件)]:{
车身:Gunzip{
_书面财产:[uint32阵列],
_readableState:[readableState],
可读性:对,
_事件:[对象],
_活动地点:7,
_maxListeners:未定义,
_可写状态:[可写状态],
可写:对,
AllowAlfOpen:是的,
_transformState:[对象],
_haderro:false,
字节:0,
_句柄:[Zlib],
_爆发者:,
_偏移量:0,
_块大小:16384,
_defaultFlushFlag:2,
_finishFlushFlag:2,
_下一步:-1,
_defaultFullFlushFlag:3,
_信息:未定义,
_级别:-1,
_策略:0
},
不安:错,
错误:null
},
[符号(响应内部)]:{
网址:'https://stackoverflow.com/questions/51120073/how-to-send-a-message-to-a-specific-channel',
现状:200,
statusText:'确定',
headers:headers{[Symbol(map)]:[Object]},
柜台:0
}
}
未定义

这不是整个HTML正文,但它告诉我页面的状态,因此如果我能在状态为404时找到执行操作的方法,那将是我试图实现的相同目标。

console.log(body)的输出是什么?不要管“{”错误,我只是忘了插入一个{.console没有输出任何东西:/console.log(res)而不是
res.text()怎么样
?很抱歉回复太晚-它现在给了我一大堆关于给定url的信息。我以为当配置文件不存在时,页面的状态会是404,但仍然是200。因此,这给了我关于页面的信息,但仍然没有html正文。
console.log(body)
的输出是什么{'错误我忘了插入一个{。控制台没有输出任何东西:/console.log(res)而不是
res.text()怎么样
?很抱歉回复太晚-它现在为我提供了一系列关于给定url的信息。我认为当配置文件不存在时,页面的状态将是404,但仍然是200。因此,这为我提供了关于页面的信息,但仍然没有html正文。