神話対現実

リアルタイムバックリンクチェッカー:神話、現実、およびリトライテーブル

そのラベルを持つすべてのツールは、遅延のあるクローラーです。当社のツールは約1ヶ月ごとに更新されます。クレジットを無駄にせずにそれに対応する方法を以下に示します。

谷を渡る木製の橋で、1枚の湿った板が最近の接触を示している

神話と現実

神話現実
毎時ポーリングで新しいリンクをより早くキャッチするインデックスは約1ヶ月に1回変更されるため、30回のポーリングのうち29回は同じ行を返します
リンクがない場合は、削除されたことを意味します単に最終更新より新しいだけかもしれません
より新鮮であることは常に優れていますトレンドには、ノイズの多い日次データよりも安定した月次スナップショットが優れています
サーチコンソールは同じデータですそれはGoogleがあなたのプロパティに対して報告する内容を示しており、それは異なる、部分的なビューです
有料プランでクローリングが即時になるどのベンダーも毎日すべてのページをクローリングするわけではありません

月次インデックスでの作業方法

ほとんどの作業は1つの習慣です:週次で実行し、月次で比較します。

リンクを新しく作成し、その証明が欲しい場合は、インデックスを待たないでください。ページを開き、ソースを表示し、アンカーとrel属性を確認します。その後、次の更新を待ちます。Google自体も再クローリングに数日または数週間を要し、2016年のPenguin 4.0の変更は、その処理自体をリアルタイムにしただけで、サードパーティツールが確認できるものをリアルタイムにしたわけではありません。

厳密な意味でのリアルタイムバックリンクチェッカーには、Web全体を監視する必要があります。誰もそれをしておらず、古くなったデータベースを毎時再クエリする安易なトリックは、同じ答えにクレジットを費やすだけです。

新しいリンクのアラート、そしてそれが失望させる理由

人々はリンクが着信した瞬間にアラートを求めることがよくあります。このリクエストは合理的です。正直な答えは、月次インデックスではそれが提供できないということです。Web上で今日現れたリンクが、インデックスに反映されるまで数週間かかる可能性があるためです。

繰り返しポーリングに基づくアラートは忙しそうで、新しい情報を何も伝えません。以下の3つのサブセクションでは、努力がどこに行くか、そしてより静かなセットアップが代わりに何ができるかを説明します。

アラートが実際に確認できること

アラートはインデックスが既に保持しているものだけを監視できます。更新の間は同じ行が返され、同一のデータでトリガーされるアラートは単にあなたの受信トレイのノイズです。

ポーリングは行ではなく呼び出しを追加する

毎時ポーリングは、1つの答えに対して多くのリクエストを送信します。このページの末尾にあるコストノートに算出が示されています。頻度が増えるほど請求書が増えますが、行はそのままです。

日付付きのプルは同じ仕事をします

週次ジョブは日付付きファイルを作成し、前週との差分で何が変わったかを示します。結果はデータの実際のリズムに一致し、新しい行について1週間以内に通知されます。

ファイルはまた、誰かが先月何が変わったかを尋ねた際の証拠にもなります。実行ごとに命名を同一に保ち、ファイルが自動的にソートされるようにしてください。

ループのトラブルシューティングテーブル

レスポンス意味スクリプトが取るべき行動
HTTP 401キーの不足または誤り停止、アラート、再試行しない
HTTP 402クレジットが枯渇停止、USDTで補充、手動で再実行
ok: false と 200不明なアクションなどの無効なパラメータボディをログに記録し、ジョブを失敗させる
タイムアウトまたは5xxネットワークまたはサーバーのひび割れ10秒と60秒の待機で2回再試行
total 以下の行ページネーションが早期に停止したループを修正;データは正常です
残高が計画より速く減少ループがページを再フェッチしている各実行前後で _credits を比較する

二重支出しないリトライラッパー

一時的な障害のみが再試行されます。401と402は即座に終了します。

python
import json, time, urllib.request as u, urllib.error as e
def call(url, tries=3):
    for i in range(tries):
        try:
            with u.urlopen(url, timeout=30) as r:
                return json.load(r)
        except e.HTTPError as x:
            if x.code in (401, 402):
                raise SystemExit(f'stop: HTTP {x.code}')
            if i == tries - 1:
                raise
        except (e.URLError, TimeoutError):
            if i == tries - 1:
                raise
        time.sleep(10 * 6 ** i)
散水缶と葉っぱの1つの水滴を持つ庭の物置

これがあなたのスケジュールに与える影響

スナップショットを週次タイマーに設定します。Actionsの実行手順のように。SQLiteスクリプトで月次差分を取ります。

コストを1行にまとめます。1ドメインの週次refdomainsプルは2クレジット、つまり年間約$0.01です。

リアルタイムバックリンクチェッカーという約束は、 oursを含め、疑ってかかるべきです。あなたがスクリプトできるものの正直なラベルは、それに伴う週次の習慣を持つ月次インデックスであり、それでも四半期ごとの手動チェックよりも優れています。

データに適合する新鮮さチェックを設定する

これらの4つのステップは、維持可能な習慣としてアラプトを置き換えます。

01

1つの周期を選択する

プルには週次、比較には月次。リポジトリのノートに両方を記載し、スケジュールが時間とともに逸脱しないようにします。

02

生レスポンスを保存する

JSONをそのままで今日の日の名前で保存します。後で任意の数を再計算でき、確認できないサマリーを信頼する必要はありません。

03

合計ではなくセットを比較する

2回のプル間で到着したものと消失したものを数えます。合計が平坦でも、50ドメインの交換を隠すことができます。

04

最初のエラーでループを停止する

401、402、またはfalseのokは実行を終了します。次のスケジュールされた実行は再試行しますが、それはアラートループよりも安価です。

パニックなしで欠落リンクを読む

インデックスにまだないリンクは、削除されたリンクとは異なるケースです。それらを混同すると誤った判断につながるため、行動する前にどちらのケースかを確認してください。

ページから始めます。まだ稼働中でリンクがあれば、インデックスが単に遅れているだけです。ページやサイトについて結論を出す前に、次の更新を待ちます。

最終更新より新しい

欠落しているリンクのほとんどは最近のものです。リンクを見つけた日付を記録し、最終更新の日付と比較します。月次インデックスでは数週間のギャップは通常です。

火曜日に発見し金曜日に確認したリンクは、インデックスに到達する時間がないため、ギャップは予想通りであり、警戒すべきものではありません。

削除、移動、または未インデックス

一部のリンクは本当に消えています。ページが削除された、リンクが編集で削除された、またはページがログインの背後にある場合。ページ自体を確認します。リンクがありインデックスにまだない場合、それはインデックスの問題であり、他のサイトの変更ではありません。

どのケースが見つかったかを記録してください。それぞれに修正方法は異なるためです。

ペースを設定した3つのGoogleリンク更新

  1. Penguin 4.0

    Googleは、リンクスパムシグナルがコアアルゴリズムの一部となり、リアルタイムで独自の側で実行されると発表しました。

  2. リンクスパムアップデート

    Googleは、リンクを数えるのではなくスパムリンクを中和させることを目的としたSpamBrainアップデートを発表しました。

  3. コアおよびスパムアップデート

    3月の大きなロールアウトは、Googleが低価値コンテンツや操作リンクをどのように処理するかを変更し、収束するまでに数週間かかりました。

石の壁を這う蔓を調査する拡大鏡

今日の証明が必要な場合の対応

確認は議論するよりも時間がかかりません。ページソースを表示します。あなたのURL、アンカーテキスト、およびnofollow、sponsored、またはugc属性を探します。

より大きなセットの場合、丁寧なスクリプトと遅延を使用してリンク元ページを自分でフェッチし、HTMLをgrepしてあなたのドメインを検索します。これはインデックスに尋ねるのとは異なる仕事であり、1時間前に公開されたリンクを見る唯一の方法です。

安価に維持される月次のリズム

1つのターゲットドメインを持つ小規模サイトを想像してください。ジョブは毎週月曜日に実行され、ファイルを作成し、月初まで他のことをしません。それは更新と一致します。クレジットの使用は平坦です。

各月の最初の月曜日が比較日です。最新の2つのファイルを開き、新しいドメインと消失したドメインを数え、ノートに1行書き込みます。通常10分で十分です。これらのノートは信頼できる履歴になります。

比較を毎月同じ場所に保持し、履歴が1行として読めるようにします。

スパイクへの対応

更新後の新しい行の急増は通常です。インデックスが数週間分の遅れを一気に追いつく可能性があるためです。キャンペーンなのか問題なのかを判断する前に、新しいドメインのサンプルを読んでください。

スパイクが数百行の1ドメインである場合、キャンペーンとして読む前に、テンプレートまたはウィジェットを探します。

静かな月への対応

平坦な月はしばしば単に平坦な月です。ジョブが実行されファイルを書き込んだことを確認してください。静かに停止したジョブは、静かなインデックスと全く同じように見えます。

リアルタイムの質問、回答あり

スケジュールが初めて設定されるたびに、同じ数少ない質問が上がってきます。

真にリアルタイムのバックリンクチェッカーはありますか?

Web全体をカバーするものはありません。リアルタイムを約束するツールは、遅延のあるクローラーを説明しており、その遅延について尋ねるべきです。当社のツールは約1ヶ月に1回更新され、ページにそう記載されています。

スクリプトはAPIをどの頻度で呼び出すべきですか?

プルには週次、トレンドの比較には月次で十分です。それ以上頻繁にポーリングするとクレジットが費やされ、インデックスが更新されるまで同じ行が返されます。

なぜ他のツールは私のAPIが示さないリンクを表示できるのですか?

各インデックスは独自のスケジュールでWebの異なるスライスをクローリングします。リンクは1つのインデックスに他方よりも早く到達する可能性があるため、2つのソース間で比較するのではなく、1つのソース内でトレンドを比較してください。

新しいリンクが現れたときにメールを受け取れますか?

ジョブがそれを送る場合にのみ可能です。スケジュールされたスクリプトは2つの日付付きプルを比較し、新しいドメインをメールまたはチャットに投稿できます。静かな中断を見逃さないように、障害アラートもオンにしておきます。

再試行はクレジットを2回消費しますか?

タイムアウト後の再試行は2回目の呼び出しを消費する可能性があるため、上記のラッパーは401と402で停止し、試行間の待機を行います。各実行前後で _credits を読み、ジョブが実際にどれだけのコストがかかるかを確認してください。

習慣のコスト

1ドメインのrefdomainsを毎時ポーリングすると、1日24回、各2クレジットで、1日48クレジットまたは$0.0048になります。金銭的には安価ですが、情報としては無意味です。週次は日次ポーリングの7分の1のコストで、同じものを示します。