Google Sheets

Пошук в електронній таблиці: формула, що виводить сайти, у коді сторінок яких є потрібний фрагмент коду, і меню, що експортує весь запит на новий аркуш. Копіювати можна безкоштовно, працює з вашим токеном API.

=PUBLICWWW(A1)                    websites whose page source contains the query in A1
=PUBLICWWW(A1, 50, "url,rank")    50 rows, only the url and rank columns
=PUBLICWWW_COUNT(A1)              how many websites match

Налаштування

  1. Відкрийте таблицю й виберіть Розширення > Apps Script.
  2. Замініть вміст Code.gs на Code.gs із репозиторію і збережіть.
  3. Перезавантажте таблицю. З’явиться меню PublicWWW; виберіть Set API token і вставте токен зі сторінки профілю. Для API потрібен платний тариф.
  4. Google один раз попросить авторизувати скрипт: він читає й змінює лише цю таблицю та звертається до api.publicwww.com.

Токен зберігається у властивостях скрипту, тож прочитати його може будь-хто, хто має змогу редагувати скрипт цієї таблиці. Надавайте доступ на редагування з огляду на це або виділіть таблиці окремий токен, який можна видалити на сторінці профілю.

Як записати запит

Запит такий самий, як у полі пошуку, - див. синтаксис запитів. Лапки важливі: "angular.min.js" у лапках - це саме такий рядок, а без них - кілька слів. Усередині формули лапку пишуть двічі, =PUBLICWWW("""angular.min.js"""), тому простіше ввести запит разом із лапками в клітинку й посилатися на неї: =PUBLICWWW(A1).

Функції

Формула виконує пошук, коли її вводять або коли змінюються її аргументи, а відповідь зберігається шість годин, тож повторне відкриття аркуша не витрачає пошуки знову. Кожна нова формула - це один пошук із денного ліміту тарифу.

Експорт усього запиту

PublicWWW > Export a query to a new sheet записує на новий аркуш усі рядки запиту, які охоплює ваш тариф, а підсумки - у примітку до першої клітинки. Дуже великий експорт може впертися в обмеження Google: шість хвилин на один запуск скрипту; для списків на сотні тисяч рядків звертайтеся безпосередньо до API - format=csv відкривається в будь-якій електронній таблиці.

Коли в клітинці #ERROR!

Наведіть курсор на клітинку, щоб побачити причину.

ПричинаЩо робити
No API token yetPublicWWW > Set API token.
invalid_keyТокен видалено; задайте новий.
plan_requiredДля API потрібен платний тариф.
too_many_requestsПонад 10 запитів на хвилину; зачекайте вказану кількість секунд.
quota_exceededДенний ліміт пошуків вичерпано; він оновлюється опівночі за UTC.

Усі коди: Помилки.

Далі Clay