為什么會有這篇博客?
父親手機流量不是很多妨蛹,不能在線聽單田芳的評書屏富,隋唐演義,我就在網(wǎng)上下載相關(guān)的mp3蛙卤,放到父親手機中狠半,讓在閑暇之余解解悶〔眩可是在網(wǎng)上搜來搜去神年,有一個網(wǎng)站可以下載:[http://www.520tingshu.com/book/book319.html],但是操作及其麻煩行嗤,一共130集已日,需要一個一個點進去試聽才能下載,這何其麻煩
麻煩的下載過程
這就想起來前一段時間看的爬蟲剛好派上用場栅屏。
正菜:
這個例子很簡單飘千,也包含了爬蟲的基本要素:獲取--解析--存儲
最好懂python堂鲜,python是爬蟲的前提,也可以用java開發(fā)占婉,但是小蟒蛇確實比java簡單易用很多泡嘴,我是java開發(fā),但是我也會選擇python開發(fā)爬蟲逆济,這也是機器學(xué)習(xí)用python開發(fā)的一個原因酌予,還有就是python提供了好多機器學(xué)習(xí)的算法類庫,扯遠了奖慌,回到這個爬蟲上
先分析網(wǎng)頁
第一集的地址
第二集的地址
由此可以推斷出所有的下載地址
代碼如下:
import requests
from bs4 import BeautifulSoup as bs
headers = {'User-Agent' : 'Mozilla/5.0(Windows; U; Windows NT 6.1;en_US; rv:1.9.1.6) Gecko/20091201 Firefox/3.5.6'}
for i in range(1,20):
k = "%03d" % i
link = 'http://tingmp33.meiwenfen.com/%E8%AF%84%E4%B9%A6%E5%A4%A7%E5%85%A8/%E5%8D%95%E7%94%B0%E8%8A%B3_%E9%9A%8B%E5%94%90%E6%BC%94%E4%B9%89/%E9%9A%8B%E5%94%90%E6%BC%94%E4%B9%89_'+str(k)+'.mp3'
r = requests.get(link,headers=headers)
with open('d:/workspace/python/data/'+str(i)+'.mp3','wb') as f:
f.write(r.content)
下載效果:
下載的文件
代碼沒有用到多線程抛虫,可變ip,可見這個網(wǎng)站沒有反爬相關(guān)的防護简僧,技術(shù)用到實際生活中提高效率