特定のサイトをググった時に, どのページが index されているのかをざっくり把握したい.
ページ数の多いサイトに対して, 普通にググって「次のページ」をクリックしまくるのは非効率な気がする.
こんなモチベーションで goolger を利用して url を抽出する.
概要は次の通り.
結論
brew で googler を inst. して, コマンドラインでググる.
コマンドラインで検索結果の取得ができれば, あとは sort
やら uniq
やらで簡単な集計が可能.
今回は jq を利用して url を抽出する.
動作環境
- curl 7.54.0
- Homebrew 1.9.2
- googler 3.7.1
- jq 1.6
前提知識
ググる時に site:
, filetype:
などのオプションを指定すると期待に沿った検索がしやすくなる.
この辺については次のサイトが詳しい.
背景
Google に index されているページをざっくり知りたい.
Google Search Console や Custom Search API を使ってもいまいちピンとこない.
ざっくりでいいから, 対象のサイトがググってどの程度出てくるのかを知りたくて googler をコマンドラインで実行した.
googler とは
コマンドラインでググれるツール.
json として結果を出力したり, site:
, filetype:
検索にも対応している.
github はこれ↓
やってみる
次の手順で googler を brew 経由で inst. する.
そして, ひとまず googler を実行してみる.
- brew 経由で googler を inst.
- 次の条件でググる
- このブログ
- url に
page
という文字列が含まれている
# install googler
$ brew install googler
# search
$ googler site:kengotakimoto.com inurl:page
1 簿記3級に合格した勉強方法まとめ | たきもと.com
https://kengotakimoto.com/page-2004/
2017年1月9日 ... 2016年11月実施 第144回日商簿記検定試験 3級
に合格した.記憶が新しい間に勉強方法等をまとめてみる.次のような視点から簿記3級の解説をしたい.フリーランスの立場から簿記を取得するメリ ットを受験体験談を交えて良かった点・悪かっ ...
2 読んだ本 | たきもと.com
https://kengotakimoto.com/page-458/
2016年3月4日 ... 2018年. 本. 「社会を変える」を仕事にする ― 社会起業家という生き方; [完全版]「20円」で世界をつなぐ仕事――想いと頭脳 で稼ぐ新しい働き方; エンジニアの知的生産術 ―効率的に学び、整理し、アウトプットする WEB+DB
PRESS plus ...
3 phpunit 基礎 | たきもと.com
https://kengotakimoto.com/page-2776/
2018年5月10日 ... phpunitに不慣れなので基礎からおさらい.概要は次の通り.
4 vagrantBoxの自作から公開まで まとめ | たきもと.com
https://kengotakimoto.com/page-2299/
2017年4月4日 ... vagrantBoxを自作したので, 公開までの手順をまとめる.
5 お問い合わせ | たきもと.com
https://kengotakimoto.com/page-1866/
2016年9月7日 ... ご依頼内容サンプル次のようなお問い合わせはこちらのフォームからお願い致します.仕事の依頼執筆レビュー広告掲載その他リ ンク切れ報告当ブログに関する質問・ご意見など次のようなご依頼は受け付けていません時間の捻出が難しい ...
6 プロフィール | たきもと.com
https://kengotakimoto.com/page-8/
2015年10月18日 ... 略歴. 2011.03 東北大学大学院 医工学研究科 医工学専攻 修了; 2011.04 旭化成; 2015.11 ~ フリーランス. 大学院修了後, 半導体設計開発を経験. 退職後,
物販事業を効率化するために独学でExcelVBA, PHPを学ぶ. 現在はWebサービス ...
7 たきもと.com - Part 2
https://kengotakimoto.com/page/2/
pipは Python3.4以降には既にインストールされている. 2018/5/25 Python. pipを使いたくて自分の環境を調べてみた. python 3.4 以降にはデフォルトでインストールされているらしい. ちょっと確認してみる....
記事を読む ...
これはググる時に site:
, inurl:
をそれぞれ指定した結果と一緒.
コマンドラインでここまでできれば, あとは grep
するなり jq で捌くなりして必要な情報を抜き取ればいい.
googler 取得結果を json に書き出して jq で url のみ抽出する
実は googler は検索結果を json として出力可能.
出力結果を jq で捌いてみる.
今回はヒットした件数が少ないから有り難みを感じにくいけど,
ヒット件数が多くなった場合に重宝する.
# export as json
$ googler site:kengotakimoto.com inurl:page --json --noua > tmp.json
↑ tmp.json
の中身はこんな感じ ↓
[
{
"abstract": "2016年3月4日 ... 2018年. 本. 「社会を変える」を仕事にする ― 社会起業家という生き方; [完全版]「20円\n」で世界をつなぐ仕事――想いと頭脳で稼ぐ新しい働き方; エンジニアの知的生産術 ―\n効率的に学び、整理し、アウトプットする WEB+DB PRESS plus ...",
"title": "読んだ本 | たきもと.com",
"url": "https://kengotakimoto.com/page-458/"
},
{
"abstract": "2017年1月9日 ... 2016年11月実施 第144回日商簿記検定試験 3級 に合格した.記憶が新しい間に勉強\n方法等をまとめてみる.次のような視点から簿記3級の解説をしたい.フリーランスの立場\nから簿記を取得するメリットを受験体験談を交えて良かった点・悪かっ ...",
"title": "簿記3級に合格した勉強方法まとめ | たきもと.com",
"url": "https://kengotakimoto.com/page-2004/"
},
{
"abstract": "2018年5月10日 ... phpunitに不慣れなので基礎からおさらい.概要は次の通り.",
"title": "phpunit 基礎 | たきもと.com",
"url": "https://kengotakimoto.com/page-2776/"
},
{
"abstract": "2017年4月4日 ... vagrantBoxを自作したので, 公開までの手順をまとめる.",
"title": "vagrantBoxの自作から公開まで まとめ | たきもと.com",
"url": "https://kengotakimoto.com/page-2299/"
},
{
"abstract": "2016年9月7日 ... ご依頼内容サンプル次のようなお問い合わせはこちらのフォームからお願い致します.\n仕事の依頼執筆レビュー広告掲載その他リンク切れ報告当ブログに関する質問・ご意見\nなど次のようなご依頼は受け付けていません時間の捻出が難しい ...",
"title": "お問い合わせ | たきもと.com",
"url": "https://kengotakimoto.com/page-1866/"
},
{
"abstract": "2015年10月18日 ... 略歴. 2011.03 東北大学大学院 医工学研究科 医工学専攻 修了; 2011.04 旭化成; \n2015.11 ~ フリーランス. 大学院修了後, 半導体設計開発を経験. 退職後, 物販事業を\n効率化するために独学でExcelVBA, PHPを学ぶ. 現在はWebサービス ...",
"title": "プロフィール | たきもと.com",
"url": "https://kengotakimoto.com/page-8/"
},
{
"abstract": "pipは Python3.4以降には既にインストールされている. 2018/5/25 Python. pipを使い\nたくて自分の環境を調べてみた. python 3.4 以降にはデフォルトでインストールされて\nいるらしい. ちょっと確認してみる.... 記事を読む ...",
"title": "たきもと.com - Part 2",
"url": "https://kengotakimoto.com/page/2/"
}
]
一度 tmp.json
として export した理由は, 何度も google へリクエストを飛ばさないため.
整形作業だけなら, 取得したデータを local で捌いたほうがいいと思う.
jq で url だけ抽出する.
$ cat tmp.json | jq .[].url
"https://kengotakimoto.com/page-458/"
"https://kengotakimoto.com/page-2004/"
"https://kengotakimoto.com/page-2776/"
"https://kengotakimoto.com/page-2299/"
"https://kengotakimoto.com/page-1866/"
"https://kengotakimoto.com/page-8/"
"https://kengotakimoto.com/page/2/"
ヒットした件数が期待より少ないな.
まぁざっくりだから一先ず良しとするか.
今回は以上.
コメント
>ヒットした件数が期待より少ないな.
「inurl:page」の対象が「固定ページ」だからでない?
やまださん
コメントありがとー
たとえば url 抽出結果の最後が
– `page/2/`
なんだけど, これって
トップページ > 最下部のページネーション
のurlなんだよね。
ここで生まれた疑問はこれ↓
– なぜ 2 があって, 3以降が index されてないのかなぁ
– noindex とかしてないはずだけどなぁ
↑これが期待より少ない、って感じた理由の一部。
で, ちょっと index の仕組み調べてみたら,
index される割合を数字で管理するには, どうやらサイトマップ作成して
「サイトマップで生成したurlの内どれだけが index されているか」
をサチコ で確認するってのが正攻法らしい.
↑これ, 全ページが index される訳ではない, って解釈できるよね。
この記事作って思ったんだけど,
このブログの index率 だったり SEO対策だったりを割となーなーにしてるから,
少し調査してみないとなぁって。
なるほど。
それであえて全数が分かりやすい固定ページで検証しているんだね。
SEOシリーズ、期待してまー。