日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python下载文件的11种方式_Python 中常见的几种下载文件方法

發布時間:2024/9/30 python 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python下载文件的11种方式_Python 中常见的几种下载文件方法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

下載比較小的文件:

# 方法一:使用urllib庫

# -*- coding:utf-8 -*-

import urllib

import time

url = 'http://mvideo.spriteapp.cn/video/2017/0414' \

'/697de826-20b5-11e7-9c72-1866daeb0df1cut_wpcco.mp4'

print "downloading with urllib"

start = time.time()

urllib.urlretrieve(url, "video.mp4")

end = time.time()

print 'Finish in :', end - start

# 方法二:使用urllib2庫

# -*- coding:utf-8 -*-

import urllib2

import time

url = 'http://mvideo.spriteapp.cn/video/2017/0414/' \

'697de826-20b5-11e7-9c72-1866daeb0df1cut_wpcco.mp4'

print "downloading with urllib2"

start = time.time()

data = urllib2.urlopen(url).read()

with open('video.mp4', 'wb') as video:

video.write(data)

end = time.time()

print 'Finish in :', end - start

# 方法三:使用requests庫

# -*- coding:utf-8 -*-

import requests

import time

url = 'http://mvideo.spriteapp.cn/video/2017/0414/' \

'697de826-20b5-11e7-9c72-1866daeb0df1cut_wpcco.mp4'

print "downloading with requests"

start = time.time()

r = requests.get(url)

with open('video.mp4', 'wb') as video:

video.write(r.content)

end = time.time()

print 'Finish in :', end - start

下載比較大的文件:

# 方法一:使用urllib2庫

# -*- coding:utf-8 -*-

import urllib2

import time

url = 'http://mvideo.spriteapp.cn/video/2017/0414/' \

'697de826-20b5-11e7-9c72-1866daeb0df1cut_wpcco.mp4'

r = urllib2.Request(url)

u = urllib2.urlopen(r)

start = time.time()

with open('video.mp4', 'w') as f:

while True:

tmp = u.read(1024)

if not tmp:

break

f.write(tmp)

end = time.time()

print 'Finish in :', end - start

# 方法二:使用requests庫

# -*- coding:utf-8 -*-

import requests

import time

url = 'http://mvideo.spriteapp.cn/video/2017/0414/' \

'697de826-20b5-11e7-9c72-1866daeb0df1cut_wpcco.mp4'

# 當把get函數的stream參數設置成False時,

# 它會立即開始下載文件并放到內存中,如果文件過大,有可能導致內存不足。

# 當把get函數的stream參數設置成True時,它不會立即開始下載,

# 使用iter_content或iter_lines遍歷內容或訪問內容屬性時才開始下載

r = requests.get(url, stream=True)

f = open("file_path", "wb")

start = time.time()

for chunk in r.iter_content(chunk_size=1024):

if chunk:

f.write(chunk)

f.flush()

# iter_content:一塊一塊的遍歷要下載的內容

# iter_lines:一行一行的遍歷要下載的內容

# 這兩個函數下載大文件可以防止占用過多的內存,因為每次只下載小部分數據

end = time.time()

print 'Finish in :', end - start

總結

以上是生活随笔為你收集整理的python下载文件的11种方式_Python 中常见的几种下载文件方法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。