Что может быть не так с XPath? - PullRequest
0 голосов
/ 12 мая 2019

На моей работе было поручено скопировать ВСЕ тексты со следующей веб-страницы в Google Sheets:

https://www.nytimes.com/interactive/2019/04/18/us/politics/mueller-report-document.html

Как вы можете сразу сказать, упомянутые тексты - это знаменитый "Отчет Мюллера" во всей его полноте.

Сначала я подумал, что вручную скопирую и вставлю каждый абзац ... но в нем содержится более 400 страниц текста и, возможно, тысячи, если не миллионы слов.

Поэтому я решил провести некоторое исследование о том, как извлечь тексты, которые существуют на веб-странице, и перенести их в Google Sheets. Я узнал, что должен был бы использовать IMPORTXML, чтобы сделать работу.

Но, к сожалению, "XPath", кажется, находится там, где я застрял без понятия.

То, что я сделал, было:

  1. Открыть веб-страницу (ссылка выше)
  2. Прокрутите вниз до Тома 1, Страница 1
  3. Найдите первый абзац, который начинается с "Этот отчет передан Генеральному прокурору ..."
  4. Щелкните правой кнопкой мыши по указанному абзацу и выберите Inspect
  5. Выберите Копировать - Копировать XPath из панели проверки

А вот что было скопировано в буфер обмена:

//*[@id="g-page-9"]/div/div[1]/div[2]/div[2]/p[1]/text()

Итак, я открыл пустой Google Sheet, выбрал пустую ячейку и ввел следующую формулу:

=IMPORTXML("https://www.nytimes.com/interactive/2019/04/18/us/politics/mueller-report-document.html","//*[@id='g-page-9']/div/div[1]/div[2]/div[2]/p[1]/text()") 

И теперь указанная формула продолжает возвращать сообщение # Н / Д (ошибка: импортированный контент пуст). Вот где я застрял, не зная, как заставить это работать.

Может кто-нибудь пролить свет на то, как заставить IMPORTXML правильно копировать тексты в целевую ячейку?

...