參考:
顯示 【sheet數(shù)】【sheet Name】【(第一行,第一列)】
print sheets[0][1][(0,0)]
from pyExcelerator import *
sheets = parse_xls('src/天娛版權(quán)明確的歌曲清單.xls')
sdata=sheets[0][1]
#按行數(shù) 迭代
for tnum in range(max([tmp[0] for tmp in sdata])):
print sdata[(tnum,0)],'-',sdata[(tnum,1)]
from pyExcelerator import *
import os
sheets = parse_xls('xls/版權(quán)確認(rèn)清單表20090601.3.xls')
cpcc= parse_xls('xls/CP對應(yīng)表.xls')

g2u=lambda str : str.decode('gbk')
bmug=lambda str : unicode(str).encode("gbk")
def cfsize(cha):
if len(cha)==1:
return ord(cha)-ord('A')
else :
fsize=0
fnum=cfsize('Z')+1
cc=list(cha)
for tnum in range(len(cc)):
fsize+=fnum*tnum+cfsize(cc[tnum])
return fsize


cpccmap={}
tsdata=cpcc[0][1]
for tnum in range(max([tmp[0] for tmp in tsdata]))[:]:
cpname=tsdata[(tnum,cfsize('A'))]
cpid=("%s" % (tsdata[(tnum,cfsize('B'))])).split(".")[0]
cpccmap[cpname]=cpid


def insertData(cpid,cpname, music,actor,copyrightname,ytime,txls,rows):
#print music,actor,cpname,ytime,txls,rows
txls.write(rows,cfsize('A'),music)
txls.write(rows,cfsize('B'),actor)
txls.write(rows,cfsize('C'),cpname)
txls.write(rows,cfsize('D'),u'中國大陸')
txls.write(rows,cfsize('E'),u'無')
txls.write(rows,cfsize('F'),u'否')
txls.write(rows,cfsize('G'),u'否')
txls.write(rows,cfsize('H'),u'無')
txls.write(rows,cfsize('I'),ytime.split(' ')[0])
txls.write(rows,cfsize('J'),u'無')
txls.write(rows,cfsize('K'),'0')
txls.write(rows,cfsize('L'),u'許可')
txls.write(rows,cfsize('M'),'200')
txls.write(rows,cfsize('N'),u'許可')
txls.write(rows,cfsize('O'),'0')
txls.write(rows,cfsize('P'),u'許可')
txls.write(rows,cfsize('Q'),'0')
txls.write(rows,cfsize('U'),copyrightname)
txls.write(rows,cfsize('V'),'100%')
txls.write(rows,cfsize('W'),cpname)
txls.write(rows,cfsize('X'),'100%')


cpmap={}
for tsdata in sheets :
try:
sdata=tsdata[1]
#按行數(shù) 迭代
for tnum in range(max([tmp[0] for tmp in sdata]))[1:]:
cpid=sdata[(tnum,cfsize('C'))]
cpname=sdata[(tnum,cfsize('D'))] #.upper()
music=sdata[(tnum,cfsize('E'))]
actor=sdata[(tnum,cfsize('F'))]
copyrightname=sdata[(tnum,cfsize('H'))]
ytime=sdata[(tnum,cfsize('K'))]
if not cpmap.has_key(cpname) :
tmpf=bmug("cp -r 0000_20090602/ data3/"+cpid+"_20090602/ " )
os.system(tmpf)
txls=Workbook()
tsheet=txls.add_sheet(u'版權(quán)列表')
cpmap[cpname]=[txls,1,'data3/'+cpid+u'_20090602/產(chǎn)品信息/'+cpid+'_20090602_01_copyright.xls',tsheet]
titles='歌曲名稱 演唱者 提供者 授權(quán)區(qū)域 電子化版權(quán)信息(有/無) 需要DRM處理(是/否) 支持二次開發(fā)(是/否) 相關(guān)版權(quán)合同記錄(有/無) 授權(quán)期限 全曲授權(quán) 全曲價(jià)格 彩鈴授權(quán) 彩鈴價(jià)格 IVR授權(quán) IVR價(jià)格 振鈴授權(quán) 振鈴價(jià)格 ISRC UPC ICPN 詞曲著作權(quán)權(quán)利人一 詞曲比例一 錄音權(quán)權(quán)利人一 錄音比例一 詞曲著作權(quán)權(quán)利人二 詞曲比例二 錄音權(quán)權(quán)利人二 錄音比例二 詞曲著作權(quán)權(quán)利人三 詞曲比例三 錄音權(quán)權(quán)利人三 錄音比例三 其它'.split('\t')
for ttnum in range(len(titles)):
tsheet.write(0,ttnum,g2u(titles[ttnum]))
insertData(cpid,cpname, music,actor,copyrightname,ytime,tsheet,1)
else :
tsheet=cpmap[cpname][3]
cpmap[cpname][1]=cpmap[cpname][1]+1
insertData(cpid,cpname, music,actor,copyrightname,ytime,tsheet,cpmap[cpname][1])
except :
print "[error]: ", music,actor,cpname,ytime,txls
pass


for tkey in cpmap.keys() :
ct=cpmap[tkey]
print ct[2]
ct[0].save(ct[2])


整理 m.tkk7.com/Good-Game
|