# coding: utf-8 # # version 2008-02-06 # import urllib def dec(str): if len(str)>0: return chr(ord(str[0])+7)+chr(ord(str[1])-47)+chr(ord(str[2])-23)+chr(ord(str[3])-17)+chr(ord(str[4])+5)+chr(ord(str[5])-19) else: return "FFFFFF" url = 'http://www.pantone-france.com/pages/paint/paintselector.aspx' sock = urllib.urlopen(url) webpage = sock.read() sock.close() data = webpage.split('\'\',\'\',\'\',\'\',\'\',')[1].split(',\r\n\t\t\r\n\t\t0);')[0] data = data.replace('\t\t','') data = data.replace('®','®') data = data.split(',\r\n') swatch = [] for line in data: exec 'swatch.append(['+line+'])' palette = open('PANTONE PAINTS+INTERIORS.gpl', 'w') palette.write('GIMP Palette\n') palette.write('Name: PANTONE® PAINTS+INTERIORS\n') palette.write('Columns: 7\n') palette.write('#\n') palette.write('#\tPalette downloaded from\n') palette.write('#\t'+url+'\n') palette.write('#\n') palette.write('#\tPANTONE Colors displayed here may not match PANTONE-identified') palette.write('#\tstandards. Consult current PANTONE Publications for accurate color.') palette.write('#\n') for i in range(0,1925): R = str(int(dec(swatch[i][2])[0:2],16)).rjust(3) G = str(int(dec(swatch[i][2])[2:4],16)).rjust(3) B = str(int(dec(swatch[i][2])[4:6],16)).rjust(3) palette.write(R+" "+G+" "+B+"\t"+swatch[i][0]+" TPX - "+swatch[i][1]+'\n') palette.close() palette = open('PANTONE MATCHING SYSTEM.gpl', 'w') palette.write('GIMP Palette\n') palette.write('Name: PANTONE MATCHING SYSTEM® coated\n') palette.write('Columns: 7\n') palette.write('#\n') palette.write('#\tPalette downloaded from\n') palette.write('#\t'+url+'\n') palette.write('#\n') palette.write('#\tPANTONE Colors displayed here may not match PANTONE-identified') palette.write('#\tstandards. Consult current PANTONE Publications for accurate color.') palette.write('#\n') for i in range(1925,3073): R = str(int(dec(swatch[i][2])[0:2],16)).rjust(3) G = str(int(dec(swatch[i][2])[2:4],16)).rjust(3) B = str(int(dec(swatch[i][2])[4:6],16)).rjust(3) palette.write(R+" "+G+" "+B) if swatch[i][0] != 'blank': palette.write("\t"+swatch[i][0]) palette.write('\n') palette.close()