Google スプレッドシート

スプレッドシートで検索を使えます。ページのソースにコードの断片を含むウェブサイトを一覧表示する関数と、クエリ全体を新しいシートにエクスポートするメニューを用意しています。無料でコピーでき、お使いの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"はその文字列との完全一致で、引用符なしでは複数の語として扱われます。関数の中では引用符を2つ重ねて=PUBLICWWW("""angular.min.js""")と書く必要があるため、クエリを引用符ごとセルに入力して、そのセルを参照するほうが簡単です:=PUBLICWWW(A1)。

関数

関数は、入力されたときや引数が変わったときに検索を実行し、結果は6時間保持されます。そのため、シートを開き直しても検索回数は再び消費されません。新しい関数1つにつき、プランの1日の利用枠から検索1回分を消費します。

クエリ全体のエクスポート

PublicWWW > Export a query to a new sheetを選ぶと、そのクエリについてプランで取得できるすべての行を新しいシートに書き出し、合計値を最初のセルのメモに記載します。非常に大きなエクスポートでは、Googleのスクリプト実行時間の上限(1回6分)に達することがあります。数十万行規模のリストは、APIに直接リクエストしてください。format=csvなら、どのスプレッドシートでも開けます。

セルに#ERROR!と表示された場合

セルにカーソルを合わせると理由が表示されます。

理由対処方法
No API token yetPublicWWW > Set API tokenを選択します。
invalid_keyトークンが削除されています。新しいトークンを設定してください。
plan_requiredAPIの利用には有料プランが必要です。
too_many_requests1分あたり10リクエストを超えています。表示された秒数だけお待ちください。
quota_exceededその日の検索回数を使い切りました。UTC午前0時にリセットされます。

すべてのコード:エラー

次へ Clay