最近、ウェブサイトの og:image が変更されました。このサイトには 100 以上のページがあり、それぞれに個別の og:image が含まれています。画像が更新されるように、Facebookにすべてのページを再スクレイプするように依頼または強制するにはどうすればよいですか? Facebook デバッガー ツールを使用するのは面倒な作業です。facebook re-scrape がサイトになるまで、アプリのコレクションを送信することはできません。
6 に答える
https://developers.facebook.com/docs/opengraph/using-objects/#updateで説明されているように、API を介して再スクレイプを強制できます。
POST /?id={object-instance-id or object-url}&scrape=true
(しかし、影響を受ける URL の実際のリストがない場合、これはちょっと意味がありません。その場合は、自動的に発生するまで待つしかないと思います。)
あなたの状況では、ここに2つの選択肢があります
ysrb の回答に従って、Open Graph Debugger ツールを使用して URL のリストをループします。
または、こちらのドキュメントに記載されているように、Facebook がページを再スクレイピングするまで 30 日間辛抱強く待ちます
Facebook が私の Web サイトをスクレイピングする理由とタイミングは?
Facebook は、Facebook に共有されているリンクをスクレイピングして、Facebook.com または iOS および Android 用の Facebook に表示するプレビュー情報をリンクするかどうかを知る必要があります。これは、プロパティが最新であることを確認するために 30 日ごとに行われます。URL がデバッガー ツールに入力されると、リンクされたページもスクレイピングされます。
Facebook は、URL のキャッシュ ヘッダーを観察します。「Expires」と「Cache-Control」を優先順に調べます。ただし、より長い時間を指定した場合でも、Facebook は 30 日ごとにページをスクレイピングします。
curl --insecure " https://graph.facebook.com/?id=[YOUR-URL-TO-SCRAPE]&scrape=true "
curl は SSL 対応である必要があります ( https://graph..であるため)。
URLのリストからループを試して実行できます
curl "http://developers.facebook.com/tools/debug/og/object?q=$url"