FBはHTMLからメタタグを取得します。
つまり、URLを入力すると、FBはページタイトル、URL(切り捨て)、<meta name="description">要素の内容を表示します。
サムネイルの選択に関しては、おそらくFBは特定の寸法を超えるもの、つまりボタンのグラフィックや1pxのスペーサーなどをスキップするものだけを選択すると思います。
編集:あなたが何を探しているのか正確にはわかりませんが、ページから関連データをスクレイピングするためのPHPの関数があります。これは、 http:
//simplehtmldom.sourceforge.net/の単純なHTMLDOMライブラリを使用します。
FBがどのようにそれを行うかを見てきましたが、スクレイピングはサーバー側で行われているようです。
クラスScrapedInfo
{{
public $ url;
public $ title;
public $ description;
public $ imageUrls;
}
関数scrapUrl($ url)
{{
$ info = new ScrapedInfo();
$ info-> url = $ url;
$ html = file_get_html($ info-> url);
//ページタイトルを取得します
$ info-> title = Trim($ html-> find('title'、0)-> plaintext);
//ページの説明を取得します
foreach($ html-> find('meta')as $ meta)
if($ meta-> name == "description")
$ info-> description = Trim($ meta-> content);
//画像のURLを取得します
$ imgArr = array();
foreach($ html-> find('img')as $ element)
{{
$ rawUrl = $ element-> src;
//相対URLを絶対URLに変換します
if(substr($ rawUrl、0,4)!= "http")
$ imgArr [] =$url。$rawUrl;
そうしないと
$ imgArr [] = $ rawUrl;
}
$ info-> imageUrls = $ imgArr;
$infoを返します。
}