メインコンテンツへスキップ

SE::Yandex::Position - Yandexでのキーワード別サイト順位チェック

スクレイパーの概要

Yandexにおけるキーワードごとのサイト順位チェック用スクレイパーです。SE::Yandex::Positionスクレイパーを使用することで、独自のドメインリストを用いてYandexの検索結果における順位を自動的に確認できます。SE::Yandex::Positionスクレイパーを利用すれば、Yandexでのサイト順位を簡単、正確、かつ迅速に特定することが可能です。Yandexの順位チェックはマルチスレッドモードで実行され、キャプチャ解決サービス(AntiCaptchaや、そのAPIをサポートするその他のサービス)を利用することもできます。Yandexの順位スクレイパーは、当社のスペシャリストによって定期的に更新されているため、常に最新の状態が保たれています。

A-Parserの機能により、SE::Yandex::Positionスクレイパーのスクレイピング設定を将来の使用のために保存(プリセット)したり、スクレイピングのスケジュールを設定したりすることが可能です。また、ファイルからのサブクエリの自動挿入も利用できます。

結果の保存は、内蔵された強力なテンプレートエンジン Template Toolkit により、必要な形式や構造で保存できます。これにより、結果に追加のロジックを適用したり、JSON、SQL、CSVを含む様々なフォーマットでデータを出力したりすることが可能です。

スクレイパーの活用事例

収集されるデータ

  • サイトの順位とサイトページへのリンク
  • サイトの全順位とページリンクのリスト
収集されるデータデータ収集の例

機能

  • スクレイパー SE::YandexSE::Yandex のすべての機能
  • サイトが見つかった場合に自動的にスクレイピングを停止
  • サブドメインの検索をサポート
  • 検索対象の順位を、ドメイン、メインドメイン、またはフルURLで比較可能
  • 複数のドメインの順位を一度に収集

ユースケース

  • 自社サイトおよび競合サイトの順位チェック
  • サイトのトラフィックの多いページの検索

クエリ

クエリとして、検索対象のドメインと検索キーワードをスペース区切りで指定する必要があります。例:

lenta.ru ニュース
lenta.ru ニュース オンライン

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 - ニュース: 3
lenta.ru - ニュース オンライン: 13
...

複数ドメインの同時チェック(一括チェック)

複数のドメインを同時にチェックする場合のすべてのドメインに関する情報は、配列 $bulkcheck に含まれます。

結果のフォーマット:

$bulkcheck.format('$domain - $position\n')

クエリの例:

lenta.ru,ria.ru,notfound.com ニュース フィード

結果の例:

lenta.ru - 1
ria.ru - 4
notfound.com - 0

SE::Yandexと同様です。

SE::Yandexと同様です。

SE::Yandexと同様です。

キーワードの競合度

SE::Yandexと同様です。

リンクのインデックス登録確認

SE::Yandexと同様です。

SQL形式での保存

SE::Yandexと同様です。

結果をJSONにダンプ

SE::Yandexと同様です。

結果の処理

A-Parserではスクレイピング中に直接結果を処理できます。このセクションでは、SE::Yandex::Positionスクレイパーで最も人気のあるケースを紹介します。

順位が0以外のドメインのみ保存

複数ドメインの同時チェック(上記の結果出力例を参照)の例をベースに、フィルターを追加しました。

フィルターを追加し、ドロップダウンリストから順位出力変数を選択します。タイプに > を選択します。次に、Number (数値)に 0 を入力します。このフィルターにより、順位が0の結果をすべて除外できます。

例をダウンロード

A-Parserへの設定例のインポート方法

eJx1VE1v2zAM/SuGEKAr4AXJ1gKDDwPSYAE2dE3Xj8OQ5KBGdKtFFj1JTpsF/u+j
ZNlOuu4im9Qj+fhEac8ctxt7bcCCsyxb7FkZ/lnGbr9k2U+uBbxk2TVa6STq5H1y
y7eQCCy41DZ5lu4JK5fw5A8YTMoIYykrubFgfMrFm5kIIiDnlXIs3TO3K4FK4haM
kQJoUwqyczQFd0QowNiWq8rDBg+V2qyfYL0ZNoh3J4OGEfEbtCSWS31yyur/Z68s
lAZfdn3mnCsLBxG5VA4M7UcK2YJ1pX2PbS+rNELvmrjPB2RH9I9lgGXMgrasXq3a
jHYW+PueyvEwSt9teqnvsOEBvXtG1hUvghKCO/C7rRCnQ/fiM3AhAjWumgr+IPqq
91r+DuQ0EpZ+jQQ7M1iQy0FI4J27lt2CDYLtG61C7I8mJkqWMktUZ5yIiNc7kmTh
Ds08aED+PUM9UeoStqB6WMh/UUklaGomOQV9jYFvQ+b/5Ki79g5L0Zk/G+LQZQnW
xfx7HyXwEh+pc/FAfStZSEe2nWKlXTy/DUDZaXblNSvQQFcmZo7V6TKVoP2A9Uc2
KXvXURtHx3LsXKPO5eM8Dm2LrPQd3di5nmJRKvB96Uqp1A/zTT8eExuPwRs9wdfB
01DCt95eReYQlf1221AtjaTxO/cEC1LysGpMueZK3d9cHu6wfqTIUKAdH5oqNTJ8
NLqclBXDNRbJshqdfRRhhbB+6P/PxmFtPJ8a6ENYz/uwuD1a+vdkTXfhEWlKSal6
1T1B3eO2f/shyvY1DcEve93AvWIeTD6S3gbEuP4LmbnKEA==
ヒント

こちらも参照してください:結果のフィルター

SE::Yandexと同様です。

SE::Yandexと同様です。

ドメインの抽出

SE::Yandexと同様です。

アンカーとスニペットからのタグ削除

SE::Yandexと同様です。

SE::Yandexと同様です。

設定可能な項目

スクレイパー SE::YandexSE::Yandex のすべての設定に加えて、以下をサポートしています:

パラメータ名デフォルト値説明
Pages count1検索結果のスクレイピングページ数 (1から25まで)
Links per page201ページあたりの検索結果リンク数 (10 / 20 / 30 / 50)
Result format$domain - $key: $position\nデフォルトの結果出力フォーマット
Stop when foundドメインが見つかった場合にスクレイピングを停止し、次のページに移動しない
Match typeExact domain検索対象の順位を、ドメイン、メインドメイン、またはフルURLで比較する機能 (Exact domain / Top level domain / Exact url)