亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

python 分析Google音樂下載地址(二)

標簽:
Python


       前一阵写了一个分析Google音乐下载地址的文章(http://dashen2009.blog.51cto.com/714741/199981)只是分析出来下载页面的地址,但是通过那个地址下载页面出了问题,Google似乎在中间加了一个跳转页面,跳转页面通过Javascript跳到真正的下载页面,我用urllib只能下载到跳转页,没有找到下载页面的方法(如果哪位朋友知道方法请转告我一下,谢谢mail:[email protected])今天在网偶然搜到一个帖子(http://forum.ubuntu.com.cn/viewtopic.php?f=73&t=194453&sid=6114953a98d40931c2fd74ffbc474d6a),用别的方法解决了这个问题。呵呵!原来Google音乐的下载页面是“http://www.google.cn/music/top100/musicdownload?id=”根本不用分析页面中的那个址(http://g.top100.cn/12174704/html/download.html?id=S3977fd7a5b3df7bc),只分析出来id就行了,用这个新地址下载页面就正确了,然后再分析出文件的下载地址便OK了。不过别高兴得这么早,新的问题又产生了,Google早就防着别人自动下它的音乐了,当你下载到一定到数量的时候(听别人说是100次),它便提示你输入验证码。我再从网上找找看有没有破解验证码的文章,先把写好的代码贴出来吧,代码还是有一点问题的,有时分析出的音乐下载数量少一些,比如一共有25首歌,总是比这个少,也没找到原因。以后再找找看看。把songlist.txt导入到迅雷下载就行了,我试了试,下载的时候有一些歌下不了。以后我再优化一下。

# coding=utf-8    

import urllib,re,sys,time 

 

 

url='http://www.google.cn/music/topiclisting?q=top100_duet_love_songs&cat=song' 

prefix='http://www.google.cn/music/top100/musicdownload?id=' 

downname='songlist.txt' 

html=urllib.urlopen(url).read() 

 

regx='下载.*window.*http.*\\\\x26resnum'            #\x26resnum很奇怪,明明看到的是一个‘\’可是匹配不出来,好像是有两个‘\\’    

reobj=re.compile(regx)    

reg='http.*mp3'     #文件下载地址 

rej=re.compile(reg)    

list=[] 

 

for match in reobj.finditer(html): 

        list.append(match.group()) 

         

id=[] 

 

for l in list: 

        id.append(prefix+urllib.unquote(l[-27:-10])) 

         

down=[] 

 

for i    in id: 

        html=urllib.urlopen(i).read() 

        time.sleep(1) 

        for match in rej.finditer(html): 

                down.append(urllib.unquote(urllib.unquote(match.group()))) 

 

                 

if len(down) >0: 

        file=open(downname,'w') 

        for d in down: 

                file.write(d+'\n') 

        file.close() 

 

print 'finish'     

         

 

©著作权归作者所有:来自51CTO博客作者redface999的原创作品,如需转载,请注明出处,否则将追究法律责任


點擊查看更多內容
TA 點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優質文章

正在加載中
  • 推薦
  • 評論
  • 收藏
  • 共同學習,寫下你的評論
感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

舉報

0/150
提交
取消