你的主要問題是你正在搜索HTML源代碼的高度和寬度的參考。在大多數情況下(當事情做得很好時),圖像沒有在html中指定的高度和寬度,在這種情況下,它們被渲染爲圖像文件本身的高度和寬度。
要獲取圖像文件的高度和寬度,您需要實際查詢並加載該文件,然後使用圖像處理來檢查高度和寬度。如果這是你想要的,讓我知道,我會幫你在這個過程中工作。
import urllib, cStringIO
from PIL import Image
# given an object called 'link'
SITE_URL = "http://www.targetsite.com"
URL = SITE_URL + link['src']
# Here's a sample url that works for demo purposes
# URL = "http://therealtomrose.therealrosefamily.com/wp-content/uploads/2012/08/headshot_tight.png"
file = cStringIO.StringIO(urllib.urlopen(URL).read())
im=Image.open(file)
width, height = im.size
if link.has_key('height'):
height = link['height'] # set height if site modifies it
if link.has_key('width'):
width = link['width'] # set width if site modifies it
要求: 該方法要求PIL庫進行圖像處理。
# from command line in a virtual environment
pip install PIL
我假設這會給我的實際圖像尺寸。我實際上是在尋找從網站上看起來如何的形象,你知道我該怎麼做嗎?謝謝! – lost9123193
當然,我只是添加處理手動修改尺寸的網站。我已經爲未指定大多數圖片尺寸的網站優化了此腳本,這是大多數網站的方式。 –
謝謝!這是我用我的代碼做的。然而,我遇到了一個修改後的圖像的問題,但只有一個鑰匙存在。你知道解決這個問題的另一種方法嗎?謝謝! – lost9123193