我試圖從我用Hpricot解析的頁面上獲得最大的圖像,而且我沒有任何運氣。如何使用它訪問img標籤的寬度和高度屬性?通過Hpricot從頁面獲得最大的圖像
0
A
回答
1
除非它在標記中,否則您將無法通過hpricot訪問文件詳細信息。
另一種方法是使用hpricot將所有src屬性返回給圖像,然後通過請求這些屬性進行循環,您可以將響應解析爲圖像並訪問這些實際圖像文件的屬性。
1
正如hemal所說,唯一可能的方法是如果圖像尺寸列在圖像標籤的屬性中。但是,如果它們很容易閱讀它們。所有標籤的屬性都可以通過相關的散列鍵獲得。例如:
doc = Hpricot("<img src='foo.jpg' width=200 height=200 /><img src='bar.jpg' width=100 height=100 />")
doc.search("//img").each do |image|
puts "#{image[:src]} => #{image[:width]}x#{image[:height]}"
end
這將導致:
foo.jpg => 200x200
bar.jpg => 100x100
4
這是可能的,所提供的圖像寬度/高度屬性存在於HTML針對每個圖像。
hp = Hpricot(page_html)
# get all image tags, sort them by height, then take largest
largest_image = hp.search("img").sort_by {|img| img["height"].to_i}[-1]
url = largest_image["src"]
相關問題
- 1. 如何獲得3個圖像通過正則表達式從頁面在WordPress
- 2. 通過組獲得最大列
- 3. 分頁:如何(從)獲得 - (至)以外,通過`PARAMS [:頁面]`
- 4. 通過FB圖表中的頁面獲得總帖子2.1
- 5. 從休眠集團獲得最大計數通過
- 6. 通過模板獲取圖像大小?
- 7. html頁面最大寬度通過了解裏面的div
- 8. 獲得從火力地堡的圖像,而不通過電話
- 9. 通過從S3獲取圖像的URL從S3顯示圖像
- 10. oracle SQL:通過最小和最大總和獲得DEPT
- 11. 圖像大小調整到最大高度,但頁面溢出
- 12. hpricot:從URL和解析元素獲取圖像
- 13. 如何通過編程獲得聯繫人ID的最大值?
- 14. 頁面上每個圖像的隨機最大寬度
- 15. 通過店面獲得產品的最佳方式
- 16. PHP獲得圖像的KB大小
- 17. 嘗試通過外部CSS調整HTML頁面上的圖像大小
- 18. 我們可以通過畫布獲得真實的圖像大小嗎?
- 19. 使用比CSS中的頁面大的頁面縮放圖像
- 20. 從存儲過程中如何獲得最大的數
- 21. 獲取圖像的最大尺寸
- 22. 通過jquery獲得最高值
- 23. 如何通過r data.table中最近4個季度的id獲得最大值?
- 24. 使用Hpricot異步響應刮頁面
- 25. 不能獲得通過頁面回調參數
- 26. 獲得最大的+與LINQ
- 27. 獲得最大的價值
- 28. 獲得最大的價值
- 29. 我想通過HTML頁面中的XML圖像路徑
- 30. 如何通過VBA在特定工作表的列中獲得最小(最小)和最大(最大)值
是的,這將是最準確的,但我只需要確定頁面上最大的圖像,如果屬性不存在,那麼我只會跳過該圖像。那麼我將如何使用hpricot來獲取寬度/高度屬性?謝謝! – thinkfuture 2010-08-12 05:23:44
有沒有什麼辦法可以使用hpricot獲取圖片屬性? – thinkfuture 2010-08-15 23:16:29