Как получить внутренний текст xpath? - PullRequest
1 голос
/ 30 января 2020

Я хочу внутренний текст из xpath

Я пытаюсь это сделать, но пока не могу получить текст

  const download = await frame.$x(xpath);
  const downloadText = await download[0].getProperty('textContent');
  console.log(downloadText);

, который выдает в результате следующее



JSHandle {
...
    _targetType: 'page',
    _sessionId: '14CCB014112B47319CA8A1C810F23B18'
  },
  _remoteObject: { type: 'string', value: '20200129_1500.zip' },
  _disposed: false
}

Я хочу получить значение, которое находится в _remoteObject, я перепробовал почти все, что нашел, и, похоже, у меня ничего не работает.

Помогите мне, пожалуйста.

Ответы [ 2 ]

0 голосов
/ 30 января 2020

Вам необходимо использовать jsonValue():

const download = await frame.$x(xpath);
const downloadText = await download[0].getProperty('textContent');
console.log(await downloadText.jsonValue());

В качестве альтернативы, вы можете просто передать элемент в evaluate:

const downloadText = await page.evaluate(el => el.textContent, download[0]);
0 голосов
/ 30 января 2020

Это работает просто отлично!

  const text = await (await download[0].getProperty('textContent')).jsonValue();

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...