Google Sheets - Проблемы с импортом XML на определенной странице - PullRequest
2 голосов
/ 25 мая 2019

Попытка использовать ImportXML в Google Sheets для получения определенного фрагмента текста, но у меня возникли проблемы после поиска моей задницы в поисках ответов.

Надежда кого-то здесь может помочь решить проблему.

Страница: https://www.afi.com.au И текст, который я хочу импортировать, находится в розовом поле:

enter image description here

Вот где яЯ пытался получить XPath, но мне не нравится то, что у меня есть, я уверен, что кто-то здесь обнаружит пробу в одно мгновение ...

=IMPORTXML("http://www.afi.com.au","//body[@class='entry-homepage type-homepage']/div[@class='page page-home']/div[@class='page__item']/div[@class='js-evo7-component']/div[@class='hero']/div[@class='hero__inner-root rellax']/div[@class='hero__inner']/div[@class='container']/div[@class='grid']/div[@class='grid__item one-third palm-one-whole']/div[@class='hero__share-price']/div[@class='price-number']//text()")

Ответы [ 2 ]

1 голос
/ 27 мая 2019

Как насчет этого обходного пути? В этом обходном пути данные извлекаются с использованием xpath, а значение извлекается с помощью регулярного выражения. Кажется, что извлеченные данные обновляются при извлечении страницы. Поэтому я использовал этот метод. Модифицированная формула выглядит следующим образом. Пожалуйста, подумайте об этом как об одном из нескольких ответов.

Пример формулы:

В этой формуле образца http://www.afi.com.au помещается в ячейку "A1".

=REGEXEXTRACT(IMPORTXML(A1,"//div[@class='js-evo7-component']/@data-config"),"netAssetBacking"":{""price"":""([\d.]+)")
  1. Получить данные, используя xpath //div[@class='js-evo7-component']/@data-config с IMPORTXML().
  2. Получить значение с помощью регулярного выражения netAssetBacking"":{""price"":""([\d.]+) с REGEXEXTRACT().

Результат:

enter image description here

Ссылки

0 голосов
/ 25 мая 2019

это будет невозможно.часть информации, которую вы пытаетесь обработать, контролируется JavaScript, а Google Sheets вообще не может читать JS.Вы можете проверить это просто отключив JS на данном сайте:

0

...