Как получить контент из элемента html в электронной таблице Google?

Я могу использовать следующий код в Google Spreadsheet, чтобы получить определенный <span> элемент в этом html-документе.

= IMPORTXML (https://finance.yahoo.com/quote/NBIX201218C00125000?p=NBIX201218C00125000;//td [@ data-test = 'PREV_CLOSE-value'] / span)

Но это возвращает сообщение об ошибке, что возвращенное содержимое пусто.

содержимое пусто

Итак, как мне получить содержимое (в этом примере текст «17,00») этого HTML-элемента в электронной таблице?

элемент диапазона


person user1837293    schedule 27.06.2020    source источник


Ответы (2)


Используйте IMPORTFROMWEB надстройку (количество запросов ограничено в бесплатном плане), чтобы получить это.

YF Используемый XPath:

//td[@data-test='PREV_CLOSE-value']/span

Формула в C5:

=IMPORTFROMWEB(C1;C2)
person E.Wiest    schedule 27.06.2020

Возможно, это из-за диспетчера согласия на Yahoo, который отображается до того, как вы перейдете на настоящую страницу.

введите описание изображения здесь

Когда я загрузил страницу, после проверки согласия поместил на мой сервер и использовал ваш код в таблицах Google, он работает.

введите описание изображения здесь

person wizardofOz    schedule 27.06.2020
comment
Я попробовал то, что сделали вы: сделал копию веб-страницы и поместил ее на свой сервер, а затем я тоже получил то, что мне нужно, как и вы. Кстати, вы добавили / text (). Это тоже то, что я искал. Однако я все еще не могу получить данные с веб-сайта напрямую. У меня уже была учетная запись Yahoo, я попытался добавить учетную запись Gmail сейчас, принял страницу согласия для этой учетной записи. Но на самом деле к странице можно получить доступ вообще без входа в систему. - person user1837293; 27.06.2020
comment
Можете ли вы получить данные прямо со страницы Yahoo? - person user1837293; 27.06.2020
comment
Вы приняли согласие, но Google Spreedsheet не может. Это не всегда проблема, но Yahoo перенаправляет запрос с finance.yahoo.com на согласие.yahoo.com. Я предполагаю, что вы не сможете добиться того, что вам нравится делать, с помощью Google Spreadsheet и функции importxml. - person wizardofOz; 27.06.2020