Re: [爆卦] 歷史線上報紙

作者: taxi550 (小姐到哪)   2015-01-05 13:05:00
python 版本,需要 PIL 跟 pycurl ,將就用吧..
#!coding=utf-8
import os
import time
import math
import pycurl
import operator
from PIL import Image
from StringIO import StringIO
def main():
picUrl = r"https://event.franklin.com.tw/C2014_11_TGF/showimg.aspx?date="
path = os.path.normpath(os.path.dirname(__file__)+"/pic")
noPic = Image.open(os.path.join(os.path.dirname(__file__), "no.jpg"))
noH = noPic.histogram()
if os.path.isdir(path):
pass
else:
os.makedirs(path)
print "目錄 "+path+" 不存在,產生新目錄."
print "圖片將儲存於 "+path+" 目錄."
for y in xrange(1951, 2015):
y = str(y)
for m in xrange(1, 12):
if m < 10:
#1951年9月16日前資料不存在所以跳過,寫法不是很好,將就一下
if m < 9 and y == "1951":
continue
m = "0"+str(m)
else:
m = str(m)
print "開始擷取 "+y+"年"+m+"月."
for d in xrange(1, 31):
if d < 10:
date = y+m+"0"+str(d)
else:
date = y+m+str(d)
savefile = os.path.normpath(path+"/"+date+".jpg")
#print savefile
#圖片已存在或已下載就略過
if os.path.isfile(savefile):
print savefile+"已存在."
continue
else:
#嘗試取得圖片
try:
buffer = StringIO()
c = pycurl.Curl()
c.setopt(c.URL, picUrl+date)
c.setopt(c.WRITEFUNCTION, buffer.write)
c.perform()
c.close()
except:
#取得圖片失敗
continue
else:
try:
buffer.seek(0)
im = Image.open(buffer)
imH = im.histogram()
#比對圖片,數字越大說明相差的越大,相似度100%接近860
rms = math.sqrt(reduce(operator.add,
list(map(lambda a,b:(a-b)**2, noH, imH)))/len(noH)) )
#print rms
if rms > 870:
#圖片不相同
im.save(savefile, 'JPEG')
else:
#圖片比對相同就跳過
continue
except:
continue
else:
#圖片儲存成功
print time.strftime("%Y-%m-%d %H:%M:%S",
time.localtime())+" 儲存 "+savefile+" 成功."
if __name__ == '__main__':
main()
作者: WeasoN (WeasoN)   2015-01-05 13:05:00
跪求翻譯
作者: kuninaka   2015-01-05 13:05:00
60分
作者: steward135 (逆風高飛)   2015-01-05 13:05:00
天書
作者: slent67 (史蘭特67)   2015-01-05 13:06:00
XDDDD
作者: mobile02 (馬英九ダイサイ)   2015-01-05 13:07:00
感謝大大分享 可以買到票了
作者: zxc17893 (嘻嘻)   2015-01-05 13:07:00
給我翻譯翻譯
作者: LIONDODO (LION)   2015-01-05 13:08:00
不要砍人家站啦xd...
作者: kuninaka   2015-01-05 13:08:00
這個程式碼是消除犯罪前科貓女想要的那隻程式
作者: psinqoo (零度空間)   2015-01-05 13:10:00
爬蟲程式?
作者: CP64 (( ̄▽ ̄#)﹏﹏)   2015-01-05 13:14:00
只是隨選抓圖的 script ' ~')
作者: ming1053 (ming)   2015-01-05 13:22:00
太長 失敗
作者: asd2260123 (南部大葉文組夜校肥宅)   2015-01-05 13:36:00
推個python
作者: rs6000 (正義的胖虎)   2015-01-05 13:51:00
感謝大大熱心的分享

Links booklink

Contact Us: admin [ a t ] ucptt.com