Node js нужны данные из html body

Mih?ly Kov?cs спросил: 10 мая 2018 в 04:37 в: javascript

У меня есть URL-адрес, и мне нужно извлечь некоторые данные из html для дальнейшей работы.

var request = require('request');
request('http://10.9.1.252:8111/goip/en/dosend.php?USERNAME=root&PASSWORD=root&smsprovider=2&smsnum=0036301234567&method=2&Memo=Test', function (error, response, body) {
  console.log('error:', error); 
  console.log('statusCode:', response && response.statusCode); 
  console.log('body:', body); 
});

С этот код я возвращаю этот вывод:

error: null
statusCode: 200
body: <html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link href="style.css" rel="stylesheet" type="text/css">
<title>Sending Messge</title>
</head>
<body><br>total will send: 1 <br><script language='javascript'>window.location = 'resend.php?messageid=85&USERNAME=root&PASSWORD=root'</script>

Как я могу извлечь messageid из html? Может кто-нибудь помочь мне с этим?

Спасибо заранее


1 ответ

Есть решение
George Fourmouzis ответил: 10 мая 2018 в 04:53

Быстрый и грязный способ сделать это, предполагая, что HTML всегда будет отформатирован таким образом, заключается в использовании регулярного выражения:

const regex = /messageid=(\d+)/g
const messageId = regex.exec(body)[1]
Mihály Kovács ответил: 10 мая 2018 в 05:06
HTML всегда отформатирован таким образом, отлично работает

Дополнительное видео по вопросу: Node js нужны данные из html body

Node JS Tutorial for Beginners #30 - Handling POST Requests

Nodemailer - Send Emails From Your Node.js App

ExpressJS Tutorial 19: POST Method (body-parser)