我目前正在開發一個小腳本來截取屏幕截圖並使用Python將它們上傳到imgur。使用imgur的API時獲取空白圖像
的代碼看起來是這樣的:
import time
import os
import ImageGrab
import urllib
import urllib2
time.sleep(1)
shot = ImageGrab.grab()
dir = os.path.join(r'C:\SAMPLE\PATH', 'Screen ' + time.strftime(r'%Y-%m-%d %H-%M-%S') + '.png')
shot.save(dir)
data = urllib.urlencode({"key":'MY_API_KEY', "image":urllib.quote(open(dir,'rb').read().encode("base64"))})
site = urllib2.Request("http://imgur.com/api/upload.json", data)
s = urllib2.urlopen(site)
print s.read()
我從imgur迴應,但是當我打開鏈接我得到一個空白圖像(雖然它的分辨率是正確的)。我認爲base64編碼方法可能會關閉,但我很茫然。
你確定screengrab已經保存到您已經閱讀文件?用硬編碼的名稱試試它。 – agf
@agf是的,文件*是*那裏,我試圖與硬編碼路徑到另一個圖像無濟於事。不過謝謝。 –