Сначала загружаешь данные скриптом к себе в хранилище, а потом, при работе программы - делаешь запросы в хранилище, если в хранилище есть такие данные - возвращаются данные из хранилища, если нет - данные загружаются в хранилище, потом возвращаются из хранилища.
Хранилище - любая примитивная система кеширования.
import urllib2 as ul, os
def storage(dataid):
if not os.path.exists("./cache/"+dataid+".tmp"):
open("./cache/"+dataid, "wb").write(ul.urlopen("http://mysite.com/images/"+dataid+".jpeg"))
return open("./cache/"+dataid+".tmp").read()
В случае, если данные есть в кеше, то просто функция достанет их из кеша, иначе скачает с интернетов, положит в кэш, потом вернет сохраненные данные.