Я написал фрагмент кода для загрузки веб-страницы в объект документа и чтения значения в заданном XPath.Все работает нормально, за исключением того, что значение в данном XPath возвращается как пустая строка.Я пробовал несколько значений XPath на странице, и каждый возвращается в виде пустой строки.Мой код приведен ниже:
var req = new XMLHttpRequest();
req.onload = function() {
if (this.readyState == 4 && this.status == 200) {
if(req.status == 200) {
var xmlString = req.responseText;
document.write(xmlString);
var parser = new DOMParser();
var xmlDoc = parser.parseFromString(xmlString, "text/xml");
var result = xmlDoc.evaluate('/html/body/div[2]/div[3]/div[1]/div[3]/div[3]/div[1]/div[1]/div[3]/div[2]/p[1]/strong', xmlDoc, null, XPathResult.STRING_TYPE, null);
alert(result.stringValue);
}
}
}
req.open('GET', 'https://www.moneycontrol.com/india/indexfutures/nifty/9/2019-03-28/OPTIDX/PE/10700.00/true', false);
req.overrideMimeType('text/xml; charset=windows-1251'); // for Cyrillic
req.send(null);
Я также пытался с XPathResult.ANY_TYPE
и .iterateNext()
, но в этом случае я всегда получаю нулевое значение.Пожалуйста, дайте мне знать, если я что-то здесь ошибаюсь.