Пример #1
0
def update_lyrics(request):  
    b = open('./artistList.txt', 'r') 
    bb = b.read()
    b.close() 
    bbb = bb.split(chr(10))

    for ar in bbb: 
        if ar.split('=')[1] == '1':
            return index(request)

        furl = "/"+ar.split('=')[1]+".htm"
        ar = ar.split('=')[0]
        artxt = ''
        
        #req = urllib2.Request(u"http://mojim.com/"+ar+".html?t1")
        #print "connected >> http://mojim.com/"+ar+".html?t1"
        #response = urllib2.urlopen(req) 
        #result = response.read()     
        print '--',furl,'--'

        if len(furl) > 0:           
            req2 = urllib2.Request("http://mojim.com"+furl) 


            response2 = urllib2.urlopen(req2)
            result2 = response2.read()     
            
            furl2 = re.findall('/tw[0-9x]*.htm', result2)
            iii = -1
            if len(furl2) > 0:        
                for furl3 in furl2: 
                    iii = iii + 1
                    if iii % 2 == 0: continue
                    try: 
                        req3 = urllib2.Request("http://mojim.com"+furl3) 
                        
                        response3 = urllib2.urlopen(req3)
                        result3 = response3.read()   
                        
                        lasturl = re.findall('<dl><dt><br /><br />[^^]*</div>', result3)
                        #a = raw_input()
                        artxt = lasturl[0].replace('更多更詳盡歌詞','').replace(u'在 ','').replace(u'Mojim.com','').replace(u'※','').replace('魔鏡歌詞網','')
  
                        aaaaaaaa = re.findall(u'title="歌詞(.*)">', artxt)
                        bbbbbbbb = re.findall('<dd><br />(.*)</dd>', artxt) 
     
                        bCnt = len(bbbbbbbb)
                        for bi in range(0, bCnt): 
                            if len(bbbbbbbb[bi]) > 22: 
                                lv = LyricsView()
                                ll = striphtml(bbbbbbbb[bi].encode('Shift_JIS').replace('<br />', '\r'))
                                ll = ll[:len(ll)-24]
                                lv.setParams({'artist':ar,'title':aaaaaaaa[bi],'lyrics':ll})
                                lv.save() 
                    except:
                        pass
        '''a = open(u''+ar+'.html', 'w')
        a.write(artxt)
        a.close()'''
    return index(request)
Пример #2
0
def view_lyrics(request):
    if isGet(request):
        lyricsView = LyricsView(request)   
        if lyricsView.view():
            return lyricsView.getRender() 
        else:
            return None 
    elif isPost(request):
        pass
Пример #3
0
def save_lyrics(request):    
    if isGet(request):
        pass 
    elif isPost(request):
        lyricsView = LyricsView(request)   
        if lyricsView.save():
            return lyricsView.getRender() 
        else:
            return None