這是一個轉載,關於python的下載 圖片視頻
目的:再熟悉下python強大的數據處理能力和python2,3的區別
情景:貼吧上的圖片,數據結構龐大的xml,某些國外比較火熱的資源分享平臺,你喜歡的漫畫,想看的電影,只要資源不錯,python‘都可以幫你實現查找,連接下載。
原理:竟然放不了圖片,感覺51CTO這一類的博客,初心是好的,也是慢慢的變成了不好用的東西了,當一個企業成立起來,他的使命就只是掙錢了。可惜了。
原理:你需要分析下目標網站,你需要的網頁地址是?一般都在src="",用正則簡單去匹配一下就可以了。如果有點復雜,那麽就用專業的工具分析下。
Fiddler或者HTTP_WATCH
針對於python的語言,是很多簡單的。這裏有一個入門小測試。轉載的。http://www.cnblogs.com/fnng/p/3576154.html
我也打算轉到cnblogs。
內容:這個小測試主要是三個方面:
1.嘗試去建立http請求,主要是用到urllib的requests的urlopen
import re import urllib.request def getHtml(url): page = urllib.request.urlopen(url) html = page.read() #html = html.decode(‘utf-8‘) return html
2,嘗試寫個正則來匹配一下src或者你需要的鏈接在哪?
關於正則,我有話要說 ,可以參考經典書籍<AWK&SED>,然後必須用一個正則測試工具,推薦Regex,好像是個小老虎,一時沒找到,在另一個電腦裏。
接著轉載
import re import urllib def getHtml(url): page = urllib.urlopen(url) html = page.read() return html def getImg(html): reg = r‘src="(.+?\.jpg)" pic_ext‘ imgre = re.compile(reg) imglist = re.findall(imgre,html) return imglist html = getHtml("http://tieba.baidu.com/p/2460150866") print getImg(html)
主要是使用到了 r‘正則‘,這裏是有個小問題的,必須要decode一下,也就是html,獲取的界面結果,需要html.decode(‘utf-s‘),將string裝成unicode
解釋:字符串在Python內部的表示是unicode編碼,因此,在做編碼轉換時,通常需要以unicode作為中間編碼,即先將其他編碼的字符串解碼(decode)成unicode
3,還是再建立一個連接,下載第二部的資源,存起來就完了,現在想想,還是雲技術好啊,我們只是搬運工,何必要下載到本地。最後轉載
def getImg(html): reg = r‘src="(.+?\.jpg)" pic_ext‘ imgre = re.compile(reg) imglist = re.findall(imgre,html) x = 0 for imgurl in imglist: urllib.urlretrieve(imgurl,‘%s.jpg‘ % x) x+=1 return imglist
基本上就結束了。如果對這有興趣的,可以自己去搜著學習一下,這是個工具語言,相當高效好用。
至於他的python環境,不管是window還是linux都是比較容易搞定的。
如果你想著進一步,可以學著用docker去撞他的環境。python與我同歲。
我還是變成原創吧,以上部分代碼來至於大人不華,君子務實。 獨立博客:HTTP://WWW.TESTPUB.CN
(網上有關於各種資源的python,比如tum..b..l...r..)
本文出自 “一站式解決方案” 博客,請務必保留此出處http://10725691.blog.51cto.com/10715691/1941407
這是一個轉載,關於python的下載 圖片視頻