国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Python實(shí)現(xiàn)批量下載文件

2019-11-25 17:27:45
字體:
供稿:網(wǎng)友

Python實(shí)現(xiàn)批量下載文件

#!/usr/bin/env python# -*- coding:utf-8 -*-from gevent import monkeymonkey.patch_all()from gevent.pool import Poolimport requestsimport sysimport osdef download(url): chrome = 'Mozilla/5.0 (X11; Linux i86_64) AppleWebKit/537.36 ' +  '(KHTML, like Gecko) Chrome/41.0.2272.101 Safari/537.36' headers = {'User-Agent': chrome} filename = url.split('/')[-1].strip() r = requests.get(url.strip(), headers=headers, stream=True) with open(filename, 'wb') as f: for chunk in r.iter_content(chunk_size=1024): if chunk:f.write(chunk)f.flush() print filename,"is ok"def removeLine(key, filename): os.system('sed -i /%s/d %s' % (key, filename))if __name__ =="__main__": if len(sys.argv) == 2: filename = sys.argv[1] f = open(filename,"r") p = Pool(4) for line in f.readlines(): if line: p.spawn(download, line.strip()) key = line.split('/')[-1].strip() removeLine(key, filename)f.close()p.join()else: print 'Usage: python %s urls.txt' % sys.argv[0]

其他網(wǎng)友的方法:

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

以上便是本文給大家分享的全部內(nèi)容了,小伙伴們可以測試下哪種方法效率更高呢。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 安义县| 长沙市| 南宁市| 德兴市| 丘北县| 西宁市| 台前县| 根河市| 东乡族自治县| 兴城市| 嘉定区| 会昌县| 巨鹿县| 濮阳县| 万盛区| 芒康县| 郓城县| 简阳市| 博罗县| 伽师县| 甘南县| 巫山县| 隆化县| 东乌珠穆沁旗| 麻江县| 措勤县| 紫金县| 遂昌县| 盐山县| 旺苍县| 桃源县| 灵宝市| 吉林省| 女性| 巴塘县| 闻喜县| 乌拉特前旗| 临洮县| 乌鲁木齐市| 山东| 海口市|