利用Python中的urllib模块下载文件到本地文件夹

1、下载单个文件到本地文件夹

#下载网页文件到本地文件夹
import os,urllib2,urllib
          
#设置下载后存放的存储路径'C:\Users\yinyao\Desktop\Python code'  
path=r'C:\Users\yinyao\Desktop\Python code'  
file_name=r'MSFT.csv'   #文件名,包含文件格式
dest_dir=os.path.join(path,file_name)

#设置下载链接的路径
url="'http://table.finance.yahoo.com/table.csv?a=%d&b=%d&c=%d&d=%d&e=%d&f=%d&s=%s&y=0&g=%s&ignore=.csv"

#定义下载函数downLoadPicFromURL(本地文件夹,网页URL)
def downLoadPicFromURL(dest_dir,URL):
        try:
          urllib.urlretrieve(url , dest_dir)
        except:
          print '\tError retrieving the URL:', dest_dir

#运行
downLoadPicFromURL(dest_dir,url)


 

2、下载多个文件到本地文件夹

# -* - coding: UTF-8 -* -
#!/usr/bin/python
#下载网页所有图片到本地文件夹
import os,urllib2,urllib
          
import re,urllib2

def getPage(url):
    '''下载文件html代码,找出一楼的核心代码'''
    opener = urllib2.build_opener()
    #不加头信息则出现403错误和乱码
    opener.addheaders = [('User-agent', 'Mozilla/5.0')];
    htmlAll = opener.open( url ).read()
    reg1Floor = '<div class="msgfont">(.*?)</div>'
    html = re.search(reg1Floor,htmlAll)
    html = html.group()
    #文件保存编码和文件编辑编码都是utf-8,所以decode一次,不然会出现乱码,但是不影响结果。
    return html.decode('utf-8')

def getImg(url):
    '''从核心代码中照图图片地址,并且下载保存、命名'''
    pageHtml = getPage(url)
    #找到所有图片地址
    regImg = '<img src="(.*?)"  alt="" />'
    imglist = re.findall(regImg,pageHtml)
    dir = r'E:\img'
    #print imglist
    for index in xrange(0,len(imglist)):
        picname = str(index+1) + '.jpg'
        finename = os.path.join(dir,picname)
        urllib.urlretrieve(imglist[index], finename)
        print finename + ' ok!'
    

if __name__ == '__main__':
    getImg('http://topic.csdn.net/u/20101013/11/024465A6-8E16-444C-9A09-DD374D29044C.html')


 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值