python 批量下载文件
生活随笔
收集整理的這篇文章主要介紹了
python 批量下载文件
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
之前給大家分享的python 多線程抓取網(wǎng)頁,我覺的大家看了以后,應(yīng)該會對python?抓取網(wǎng)頁有個(gè)很好的認(rèn)識,不過這個(gè)只能用python 來抓取到網(wǎng)頁的源代碼,如果你想用做python 下載文件的話,上面的可能就不適合你了,最近我在用python 做文件下載的時(shí)候就遇到這個(gè)問題了,不過最終得以解決,為了讓大家以后碰過這個(gè)問題有更好的解決辦法,我把代碼發(fā)出來:
? from?os.path?import?basenamefrom?urlparse?import?urlsplit
def?url2name(url):
????return?basename(urlsplit(url)[2])
def?download(url,?localFileName?=?None):
????localName?=?url2name(url)
????req?=?urllib2.Request(url)
????r?=?urllib2.urlopen(req)
????if?r.info().has_key('Content-Disposition'):
????????# If the response has Content-Disposition, we take file name from it
????????localName?=?r.info()['Content-Disposition'].split('filename=')[1]
????????if?localName[0]?==?'"'?or?localName[0]?==?"'":
????????????localName?=?localName[1:-1]
????elif?r.url?!=?url:
????????# if we were redirected, the real file name we take from the final URL
????????localName?=?url2name(r.url)
????if?localFileName:
????????# we can force to save the file as specified name
????????localName?=?localFileName
????f?=?open(localName,?'wb')
????f.write(r.read())
????f.close()
download(r'你要下載的python文件的url地址')
趕快去試試把,可以在本地運(yùn)行python去下載一些自己想要的pdf文件吧。
?
文章鏈接:http://www.cnpythoner.com/post/pythonurldown.html?轉(zhuǎn)載請保留,謝謝!
轉(zhuǎn)載于:https://www.cnblogs.com/wanpython/archive/2012/11/29/2794448.html
《新程序員》:云原生和全面數(shù)字化實(shí)踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀總結(jié)
以上是生活随笔為你收集整理的python 批量下载文件的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 英文系统支持中文
- 下一篇: 使用cx_freeze打包Python程