2012-03-05 102 views
0

我正在實施我自己的鏈接刮板來儘可能地複製Facebook的技術(除非有人爲我準備好了庫...)。獲取像Facebook鏈接刮板的圖像大小

根據SO上的衆多答案,Facebook確定與共享鏈接關聯的圖像的過程涉及搜索多個可識別的元標記,然後,如果未找到這些標記,則逐頁瀏覽圖像並返回我的問題是,Facebook如何獲得尺寸信息的大小(至少50px乘50px,最大寬高比爲3:1,並且採用PNG,JPEG或GIF格式,根據this answer

圖像?是否爲每個共享鏈接加載所有圖像並檢查它們?有沒有更有效的方法來做到這一點。 (我的後端是Python的。)

(旁註:難道是有意義的使用客戶端,而不是服務器端方法?)

回答

0

有沒有更有效的方法來做到這一點。

最常見的「網」的圖形格式 - JPEG,GIF,PNG - 包含有關寬度信息&在頭高度(或至少在第一塊中,PNG)。

因此,如果遠程Web服務器是接受範圍請求它會是可能只要求第一X字節的圖像資源,而不是整個事情以獲得所需的信息。 (這是Facebook的刮板對於HTML頁面的作用 - 在調試器中看到請求被HTTP狀態碼206部分內容回答 - 這意味着Facebook表示他們只對其感興趣在第一個X(K)字節(頭元元素),並且網絡服務器能夠給他們只有。