3

python 下载文件

© laowang/ 2011-7-27 / 19:43

之前给大家分享的python 多线程抓取网页,我觉的大家看了以后,应该会对python 抓取网页有个很好的认识,不过这个只能用python 来抓取到网页的源代码,如果你想用做python 下载文件的话,上面的可能就不适合你了,最近我在用python 做文件下载的时候就遇到这个问题了,不过最终得以解决,为了让大家以后碰过这个问题有更好的解决办法,我把代码发出来:


from os.path import basename
from 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地址')

赶快去试试把,可以在本地运行python去下载一些自己想要的pdf文件吧。

 


文章链接:http://www.cnpythoner.com/post/pythonurldown.html 转载请保留,谢谢!

作者:老王@python python 教程
老王python,提供python相关的python 书籍,django 教程python 下载,希望大家能够喜欢!

文章内容皆为人工编辑,如有错误,敬请指正。谢谢你关注

上一篇:  python mysql 安装包 下一篇:  python urllib下载网页

本文有 3 篇评论

  1. 1 易发国际 说 :
    2011-8-4 18:51:44
    avatar

    看到代码头疼啦

  2. 2 WILDEN 说 :
    2011-8-5 14:39:46
    avatar

    你通不通过我的留言,我就在那里,不悲不喜

  3. 3 苏州自驾游 说 :
    2011-8-5 17:02:58
    avatar

    支持下楼主了

发表你的见解