SE::DuckDuckGo::Position - DuckDuckGoにおけるキーワード別サイト順位チェック
スクレイパー概要
DuckDuckGoにおけるキーワード別のサイト順位チェックスクレイパーです。SE::DuckDuckGo::Position スクレイパーを使用することで、独自のドメインリストを用いてDuckDuckGoの検索結果における順位を自動的に確認できます。SE::DuckDuckGo::Position スクレイパーを利用すれば、DuckDuckGoでのサイト順位を簡単、正確、かつ迅速に特定することが可能です。
A-Parserの機能により、SE::DuckDuckGo::Position スクレイパーのスクレイピング設定を将来の使用のために保存(プリセット)したり、スクレイピングのスケジュールを設定したりすることが可能です。ファイルからのサブクエリ自動挿入も利用できます。
内蔵された強力なテンプレートエンジン Template Toolkit により、結果に必要なロジックを適用し、JSON、SQL、CSVを含む様々なフォーマットでデータを出力するなど、必要に応じた形式や構造で結果を保存できます。
収集データ
- サイトの順位とページへのリンク
- すべてのサイト順位とページリンクのリスト

機能
- スクレイパー
SE::DuckDuckGo の全機能 - サイトが見つかった場合に自動的にスクレイピングを停止
- サブドメインの検索をサポート
- 検索対象の順位をドメイン、メインドメイン、またはフルURLで比較可能
- 複数のドメインの順位を一度に収集
ユースケース
- 自社サイトおよび競合サイトの順位チェック
- サイトのトラフィックページ(集客ページ)の検索
クエリ
クエリとして、検索対象のドメインと検索キーワードをスペース区切りで指定する必要があります。例:
lenta.ru ニュース
lenta.ru ニュース オンライン
ria.ru ニュース
a-parser.com A-Parser
1つのサイトをクエリリストでチェックする必要がある場合は、クエリフォーマット(Query format)でドメインを指定できます:
lenta.ru $query
または、単にキーワードリストを使用することもできます。クエリで一度に複数のドメインを使用するには、ドメインをカンマで区切り、スペースの後にキーワードを指定します。例:
lenta.ru,ria.ru,notfound.com ニュース 配信
結果は配列 $bulkcheck に記録されます。
Stop when found オプションもサポートされており、すべてのドメインで順位が見つかった場合にスクレイピングが終了します。
クエリの置換
内蔵マクロを使用してファイルからサブクエリを自動挿入できます。例えば、キーワードベースに基づいてサイトをチェックしたい場合、いくつかのメインクエリを指定します:
ria.ru
lenta.ru
rbc.ru
yandex.ru
クエリフォーマットに、ファイル Keywords.txt から追加の単語を挿入するマクロを指定します。この方法により、サイトリストをキーワードリストでチェックし、結果として順位を取得できます:
$query {subs:Keywords}
このマクロは、元の検索クエリごとにファイル内のクエリと同じ数の追加クエリを作成します。その結果、マクロの動作により [元のクエリ数(ドメイン)] x [Keywordsファイル内のクエリ数] = [総クエリ数] となります。
結果の出力例
A-Parserは内蔵のテンプレートエンジン Template Toolkit により柔軟な結果のフォーマットをサポートしており、任意の形式やCSV、JSONなどの構造化された形式で結果を出力できます。
順位リストのエクスポート
以下の形式で結果を取得:
検索ドメイン - キーワード: 検索結果の順位番号
結果フォーマット:
$domain - $key: $position\n
結果の例:
lenta.ru - ニュース オンライン: 13
lenta.ru - ニュース: 26
ria.ru - ニュース: 1
a-parser.com - A-Parser: 1
...
複数ドメインの同時チェック(一括チェック)
複数ドメインを同時にチェックする場合のすべてのドメインに関する情報は、配列 $bulkcheck に含まれます。
結果フォーマット:
$bulkcheck.format('$domain - $position\n')
クエリの例:
lenta.ru,ria.ru,notfound.com ニュース 配信
結果の例:
lenta.ru - 2
ria.ru - 6
notfound.com - 0
リンク + アンカー + スニペットと順位の出力
リンク、アンカー、スニペットのCSVテーブルへの出力
関連キーワードの保存
キーワードの競合度
リンクのインデックス登録チェック
SQL形式での保存
JSONへの結果ダンプ
結果の処理
A-Parserではスクレイピング中に結果を直接処理できます。このセクションでは、SE::DuckDuckGo::Position スクレイパーの最も一般的なケースを紹介します。
順位が0以外のドメインのみ保存
複数ドメインの同時チェック(上記の結果出力例を参照)をベースに、フィルタを追加した例です。
フィルタを追加し、ドロップダウンリストから順位出力変数を選択します。タイプに > を選択し、Number (数値)に 0 を入力します。このフィルタにより、順位が0の結果をすべて除外できます。
サンプルをダウンロード
eJx1VNtu2zAM/RVDCNAVyIJ2a4HBDwPSbhk2dE3Wy1OSB8WiWy2y6OmSXoL8+yhZ
ttNufYgi3g55SMpb5rhd25kBC86yfL5ldbyznF1/zfMvvliH3zfM8xla6STq7H12
zTeQCay41DZ7kO4evct49gwGszq5sSGrubFgAuz8TTRyE1Byrxwbbpl7qoFS4waM
kQLIKAXJ3kJt8PGJ5A1XnlxKrizs3o4o0VTcEZUI3EaxwcqrdXEPxXrUeLw7GDQ8
iNWgLX2x0AeHbA+9lMqBIZwEmM9ZBxR4tlyWw+R608R93kt9RHeso1vOLGjLdstl
i2gnsZpQYX08SiPojKHdN9jUAb16QtIlryIvwR0Ea0vrcOQeAwIXIpbGVZMhDKPP
eqvln1icRvKlq5FgJwYrUjmIAEH51FY3Z4MoB6I+xv5qYtJAhsxSqRNOhYjXFklt
4Q7NNPaA9FuGeqzUBWxA9W4R/8xLJWhzxiUFfU+B/3eZ/oOx6+jtp6L9eDBUQ4cS
pbPpzz5K4AXeEXOxIt5KVtKRbM/Ra5fmtwaou55dhp5VaKBLk5BTdnpUNeiwjP3I
xnWvekHjxVheKgvUpbybpgVvPb2+oZc71edY1QoCL+2VGoanctWvx9imMQShL/B1
8HlMEai3T5E5RGV/XDel1kbS+p2GAivq5H7WBFlwpW6vLvYtrF8pEhRox0fGD42M
fxpdSZ0VowKrbOGPTj6KeEI8P/T3k+N4NppPjesqnqd9WDKHGRX0Eu6QdpT6tFt2
H6HuE7d9+1OUb3e0Br/trAkJPQsBpKPm2+hxvPsLSinNVw==
参照:結果フィルタ
リンクの重複排除
ドメインによるリンクの重複排除
ドメインの抽出
アンカーとスニペットからのタグ削除
含有条件によるリンクのフィルタリング
設定可能な項目
スクレイパー
SE::DuckDuckGo のすべての設定に加え、以下をサポートしています:
| パラメータ名 | デフォルト値 | 説明 |
|---|---|---|
| Result format | $domain - $key: $position\n | デフォルトの結果出力フォーマット |
| Stop when found | ☑ | ドメインが見つかった場合にスクレイピングを停止し、次のページに遷移しません |
| Match type | Exact domain | 検索対象の順位をドメイン、メインドメイン、またはフルURL(Exact domain / Top level domain / Exact url)で比較する機能 |