in the head part within the html, there are 4 pieces of information that I wanted to get using cheerio, but I tried everything and it is always returning an invalid value, in this case returning NOTHING
in the javascript code it has the 4 options that I am trying to get from the html, if possible someone can help I would appreciate it

my code
const axios = require("axios");
const cheerio = require('cheerio');
const headers = {
'Cache-Control': 'max-age=0',
'Content-Type': 'application/x-www-form-urlencoded',
'Cookie': 'PHPSESSID=0cpr6cn0mdqhab6v6vvdi0ifbm',
'Host': 'sistemas.viareal.net',
'Origin': 'https://sistemas.viareal.net',
'Referer': 'https://sistemas.viareal.net/utp-dev/index.php?ti=pl',
'Sec-Ch-Ua': '"Not_A Brand";v="8", "Chromium";v="120", "Google Chrome";v="120"',
'Sec-Ch-Ua-Mobile': '?0',
'Sec-Ch-Ua-Platform': '"Windows"',
'Sec-Fetch-Dest': 'document',
'Sec-Fetch-Mode': 'navigate',
'Sec-Fetch-Site': 'same-origin',
'Sec-Fetch-User': '?1',
'Upgrade-Insecure-Requests': '1',
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36'
};
const minhaFuncaoAssincrona = async () => {
try {
const response = await axios.post('https://sistemas.viareal.net/utp-dev/index.php?s=pl', {
cep: '93285310',
numcasa: '85'
}, { headers, timeout: 160000 });
const extrairInformacoes = (html) => {
const $ = cheerio.load(html);
const viabilidade = $('font:contains("Rede disponível no endereço pesquisado")').length > 0;
if (viabilidade) {
console.log('Há viabilidade no endereço pesquisado.');
const enderecoProspectado = $('td:contains("Endereço prospectado:")').next().find('b').text().trim();
const ctoPreferencial = $('b:contains("CTO Preferencial:")').closest('td').next().text().trim();
const ctoAlternativa1 = $('b:contains("CTO Alternativa 1:")').closest('td').next().text().trim();
const ctoAlternativa2 = $('b:contains("CTO Alternativa 2:")').closest('td').next().text().trim();
console.log('Endereço Prospectado:', enderecoProspectado);
console.log('CTO Preferencial:', ctoPreferencial);
console.log('CTO Alternativa 1:', ctoAlternativa1);
console.log('CTO Alternativa 2:', ctoAlternativa2);
} else {
console.log('Não há viabilidade no endereço pesquisado.');
}
};
extrairInformacoes(response.data);
} catch (error) {
console.error('Erro na solicitação:', error.message);
}
};
minhaFuncaoAssincrona();
html response
<!DOCTYPE html><html> <head> <link rel='SHORTCUT ICON' href='knife.png'/> <style> /* Set the size of the div element that contains the map */ #map { height: 500px; /* The height is 400 pixels */ width: 700px; /* The width is the width of the web page */ } .blink {
animation: blinker 0.8s linear infinite;
color: #cc0000;
font-size: 12px;
font-weight: bold;
font-family: sans-serif;
}
@keyframes blinker {
0% {
opacity: 0;
}
} </style> <Title>UTP - Pinga Lote</title><style type="text/css">
body {color: #737373; font-size: 10px; font-family: verdana;}
textarea,input,select {
background-color: #FDFBFB;
border: 1px solid #BBBBBB;
padding: 2px;
margin: 1px;
font-size: 14px;
color: #808080;
}
a, a:link, a:visited, a:active { color: #1212FF; text-decoration: none; font-size: 14px; }
a:hover { border-bottom: 1px dotted #c1c1c1; color: #AAAAAA; }
img {border: none;}
td { font-size: 14px; color: #7A7A7A; }
</style>
</head> <body><table border=0 width=100%><tr><td><center><table border=0 bgcolor=#eeeeee width=100%><tr><td valign=center colspan=14 bgcolor=#FF0D5D><font color=white><center>UTP - Versão 0.23 - Bem vindo [email protected]. <a href=index.php?s=logout><font color=white>Deslogar.</a></td></tr><tr><td height=80 valign=center width=200><center><a href=index.php?ti=pl><img src=pingalote.png><br><font face='Arial' color='black' size='2'>Pinga Lote</a></td><td height=80 valign=center width=200><center><a href=index.php?s=ctoProx><img src=ctoprox.png><br><font face='Arial' color='black' size='2'>CTO Próxima</a></td><td height=80 valign=center width=200><center><a href=index.php?ti=ts><img src=timesheet.png><br><font face='Arial' color='black' size='2'>TimeSheet</a></td><td height=80 valign=center width=200><center><a href=index.php?s=valid1><img src=valida.png><br><font face='Arial' color='black' size='2'>Valida CTO</a></td></td></tr></table> <style> /* Set the size of the div element that contains the map */ #map { height: 400px; /* The height is 400 pixels */ width: 600px; /* The width is the width of the web page */ } </style><center><table border=0 bgcolor=#eeeeee width=100%><tr><td colspan=2 bgcolor=#FF0D5D><font color=white><center>Informações de Viabilidade</td><tr><td valign=top><center><center><table border=0 bgcolor=#eeeeee><tr><td bgcolor=#cccccc><center><font face='arial' color='black' size='2'>Dados da pesquisa</td></tr><tr><td><br><font face='arial' color='black' size='2'>Endereço prospectado:<br> <b>Rua Bandeirantes, 85 Liberdade Esteio/RS</b> <br><br><font color=green><b><center>Rede disponível no endereço pesquisado<br><br></b></font><b>CTO Preferencial:</b> [EIO-024-2-2/C:16/O:0/D:16]<b> GPON</b> FTTH <br><font color=black>Distância em linha reta: 44 m <font color=black> <font color=black>Pelo arruamento: 37 m <font color=black><br>R. Bandeirantes, 48 - Liberdade, Esteio - RS, 93285-310, Brazil<br><br><b>CTO Alternativa 1:</b> [EIO-024-2-3/C:16/O:0/D:16]<b> GPON</b> FTTH <br><font color=black>Distância em linha reta: 74 m <font color=black> <font color=black>Pelo arruamento: 206 m <font color=black><br>Rua 7 de Setembro, 122 - Liberdade, Esteio - RS, 93285-280, Brazil<br><br><b>CTO Alternativa 2:</b> [EIO-024-2-4/C:16/O:0/D:16]<b> GPON</b> FTTH <br><font color=black>Distância em linha reta: 119 m <font color=black> <font color=black>Pelo arruamento: 191 m <font color=black><br>R. Império, 245 - Liberdade, Esteio - RS, 93285-300, Brazil<br><br><a href=index.php?s=pl&oc=true&lat=-29.8570493&lng=-51.1626037>Fazer essa pesquisa novamente considerando ocupação de portas.</a></td></tr></table></td><td width=60%> <!--The div element for the map --> <div id='map'></div> <script> function initMap() {var prospect = {lat: -29.8570493, lng: -51.1626037};
var ctoProx = {lat: -29.85685456114, lng: -51.16300520971};
var ctoProx2 = {lat: -29.85759455392, lng: -51.16303747274};
var ctoProx3 = {lat: -29.85617002886, lng: -51.16190663742};
var ctoProx4 = {lat: -29.85797213144, lng: -51.16421839478};
var ctoProx5 = {lat: -29.85522027068, lng: -51.16365481213};
var cto = {lat: -29.76780141496, lng: -51.15253019817};
var map = new google.maps.Map(document.getElementById('map'), {zoom: 17, center: prospect, mapTypeId: 'hybrid', styles: [
{
"elementType": "geometry",
"stylers": [
{
"color": "#ebe3cd"
}
]
},
{
"elementType": "labels.text.fill",
"stylers": [
{
"color": "#523735"
}
]
},
{
"elementType": "labels.text.stroke",
"stylers": [
{
"color": "#f5f1e6"
}
]
},
{
"featureType": "administrative",
"elementType": "geometry",
"stylers": [
{
"visibility": "off"
}
]
},
{
"featureType": "administrative",
"elementType": "geometry.stroke",
"stylers": [
{
"color": "#c9b2a6"
}
]
},
{
"featureType": "administrative.land_parcel",
"elementType": "geometry.stroke",
"stylers": [
{
"color": "#dcd2be"
}
]
},
{
"featureType": "administrative.land_parcel",
"elementType": "labels.text.fill",
"stylers": [
{
"color": "#ae9e90"
}
]
},
{
"featureType": "landscape.natural",
"elementType": "geometry",
"stylers": [
{
"color": "#dfd2ae"
}
]
},
{
"featureType": "poi",
"stylers": [
{
"visibility": "off"
}
]
},
{
"featureType": "poi",
"elementType": "geometry",
"stylers": [
{
"color": "#dfd2ae"
}
]
},
{
"featureType": "poi",
"elementType": "labels.text.fill",
"stylers": [
{
"color": "#93817c"
}
]
},
{
"featureType": "poi.park",
"elementType": "geometry.fill",
"stylers": [
{
"color": "#a5b076"
}
]
},
{
"featureType": "poi.park",
"elementType": "labels.text.fill",
"stylers": [
{
"color": "#447530"
}
]
},
{
"featureType": "road",
"elementType": "geometry",
"stylers": [
{
"color": "#f5f1e6"
}
]
},
{
"featureType": "road",
"elementType": "labels.icon",
"stylers": [
{
"visibility": "off"
}
]
},
{
"featureType": "road.arterial",
"elementType": "geometry",
"stylers": [
{
"color": "#fdfcf8"
}
]
},
{
"featureType": "road.highway",
"elementType": "geometry",
"stylers": [
{
"color": "#f8c967"
}
]
},
{
"featureType": "road.highway",
"elementType": "geometry.stroke",
"stylers": [
{
"color": "#e9bc62"
}
]
},
{
"featureType": "road.highway.controlled_access",
"elementType": "geometry",
"stylers": [
{
"color": "#e98d58"
}
]
},
{
"featureType": "road.highway.controlled_access",
"elementType": "geometry.stroke",
"stylers": [
{
"color": "#db8555"
}
]
},
{
"featureType": "road.local",
"elementType": "labels.text.fill",
"stylers": [
{
"color": "#806b63"
}
]
},
{
"featureType": "transit",
"stylers": [
{
"visibility": "off"
}
]
},
{
"featureType": "transit.line",
"elementType": "geometry",
"stylers": [
{
"color": "#dfd2ae"
}
]
},
{
"featureType": "transit.line",
"elementType": "labels.text.fill",
"stylers": [
{
"color": "#8f7d77"
}
]
},
{
"featureType": "transit.line",
"elementType": "labels.text.stroke",
"stylers": [
{
"color": "#ebe3cd"
}
]
},
{
"featureType": "transit.station",
"elementType": "geometry",
"stylers": [
{
"color": "#dfd2ae"
}
]
},
{
"featureType": "water",
"elementType": "geometry.fill",
"stylers": [
{
"color": "#b9d3c2"
}
]
},
{
"featureType": "water",
"elementType": "labels.text.fill",
"stylers": [
{
"color": "#92998d"
}
]
}
]
});
var infoWindow = new google.maps.InfoWindow({content: '', position: prospect});var prospectIcon = { url: 'pin18-yellow.png',labelOrigin: new google.maps.Point(9, -2), size: new google.maps.Size(18, 26),origin: new google.maps.Point(0, 0),anchor: new google.maps.Point(9, 26)};
var ctopIcon = { url: 'selecionado.png',labelOrigin: new google.maps.Point(0, -4), size: new google.maps.Size(20, 20),origin: new google.maps.Point(0, 0),anchor: new google.maps.Point(20, 20)};
var marker0 = new google.maps.Marker({position: prospect, map: map, label: 'Cliente', draggable:true, icon: prospectIcon});
function handleEvent(event) {
infoWindow = new google.maps.InfoWindow({position: event.latLng});
var NovoP = '<a href=index.php?s=pl&latP=' + event.latLng.lat() + '&lngP=' + event.latLng.lng() + '>Nova busca aqui</a>';
infoWindow.setContent(NovoP);
infoWindow.open(map);
}marker0.addListener('dragend', handleEvent);var marker1 = new google.maps.Marker({position: ctoProx, map: map, icon: ctopIcon, label: 'CTO Preferencial[16/16]'});
var marker2 = new google.maps.Marker({position: ctoProx2, map: map, icon: ctopIcon, label: 'CTO Alternativa 1[16/16]'});
var marker3 = new google.maps.Marker({position: ctoProx3, map: map, icon: ctopIcon, label: 'CTO Alternativa 2[16/16]'});
var cto = {lat: -29.85685456114, lng: -51.16300520971};
var ctoCircle = new google.maps.Circle({
strokeColor: '#ff0000',
strokeOpacity: 0.2,
strokeWeight: 0.2,
fillColor: '#FF0000',
fillOpacity: 0.25,
map: map,
center: cto,
radius: 150,
zIndex: 5
});
var cto = {lat: -29.85759455392, lng: -51.16303747274};
var ctoCircle = new google.maps.Circle({
strokeColor: '#ff0000',
strokeOpacity: 0.2,
strokeWeight: 0.2,
fillColor: '#FF0000',
fillOpacity: 0.25,
map: map,
center: cto,
radius: 150,
zIndex: 5
});
var cto = {lat: -29.85617002886, lng: -51.16190663742};
var ctoCircle = new google.maps.Circle({
strokeColor: '#ff0000',
strokeOpacity: 0.2,
strokeWeight: 0.2,
fillColor: '#FF0000',
fillOpacity: 0.25,
map: map,
center: cto,
radius: 150,
zIndex: 5
});
}
</script>
<script async defer src="https://maps.googleapis.com/maps/api/js?key=AIzaSyD-D6oUG0QtWftzZ6ZOLfcKA6_zz3kQjhs&callback=initMap&libraries=visualization"> </script></td></tr></table> </body>
</html>