Можно ли использовать importXML () для очистки данных из поисковой выдачи? - PullRequest
0 голосов
/ 05 марта 2019

Я прочитал статью, в которой объяснялось, как в Google Sheets можно использовать функцию importXML () для доступа к веб-странице, очистки данных с нее и помещения результатов в ячейку.Например, если я поместил URL-адрес веб-сайта в ячейку A1 и следующую формулу в ячейку A2:

=importxml(A1,"//meta[@name='description']/@content")

, то A2 отобразит содержимое тега мета-описания на веб-странице, указанной в A1.

Я хотел бы использовать аналогичный подход, но поместив запрос Google в ячейку A1.

Я скопировал следующую формулу (которую я нашел в статье в британском журнале) в ячейку A1:

=ArrayFormula(regexreplace(regexextract(importxml("https://www.google.co.uk/search?q=trade+balance&pws=0&gl=UK&num=50","//h3[@class='r']/a/@href"), "http.*&sa\b"), "&sa", ""))

Он заполнил 50 строк данных.

Затем я изменил параметр num на «num = 20» и получил ответ «Не удалось получить URL ...»

Затем я ввел ту же формулу в другую ячейку, заменив URL-адрес на «https://www.google.com", а параметр gl на« gl = US », и снова получил ответ« Не удалось получить URL-адрес ... »

Похоже, что Google в Великобритании может позволять вам делать это периодически, а Google в США - нет.

Может кто-нибудь предложить альтернативу? Вам нужен ключ, чтобы получить разрешение?

Кстати - я прочитал на форуме, что вы можете использовать пользовательский поиск GoogleAPI и UrlFetch () для сбора результатов поиска и заполнения Google Sheet.Но прежде чем попытаться это, я подумал, что сначала спросить о возможности использования importXML.

Спасибо.

1 Ответ

0 голосов
/ 05 марта 2019

Google в последнее время блокирует поисковые запросы, сделанные как из скриптов приложений, так и из Google Sheets, хотя запросы делаются с одного из их собственных IP-адресов.Они, вероятно, делают это, чтобы предотвратить соскоб.Есть случаи, когда это работает, и вы можете очистить поиск Google, однако, это ограниченное время, поэтому результаты исчезнут через несколько минут / часов.Вы можете попробовать очистить Bing, DuckDuckGo или другие поисковые системы.

...