gpt4 book ai didi

python - 如何将文件下载到特定目录?

转载 作者:太空宇宙 更新时间:2023-11-03 11:34:09 30 4
gpt4 key购买 nike

我最近一直在尝试用 python 编写一个程序,将文件下载到特定目录。我正在使用 Ubuntu,到目前为止我有这个

import os
import getpass
import urllib2

y = getpass.getuser()

if not os.access('/home/' + y + '/newdir/', os.F_OK):
print("Making New Directory")
os.mkdir('/home/' + y + '/newdir/')

url = ("http://example.com/Examplefile.ex")
file_name = url.split('/')[-1]
u = urllib2.urlopen(url)
f = open(file_name, 'wb')
meta = u.info()
file_size = int(meta.getheaders("Content-Length")[0])
print "Downloading: %s Bytes: %s" % (file_name, file_size)

file_size_dl = 0
block_sz = 8192
while True:
buffer = u.read(block_sz)
if not buffer:
break

file_size_dl += len(buffer)
f.write(buffer)
status = r"%10d [%3.2f%%]" % (file_size_dl, file_size_dl * 100. / file_size)
status = status + chr(8)*(len(status)+1)
print status,

f.close()

这当前将文件下载到同一目录,我如何更改它下载到的目录?

修复它的新代码:

import os
import getpass
import urllib2

y = getpass.getuser()

if not os.access('/home/' + y + '/newdir/', os.F_OK):
print("Making New Directory")
os.mkdir('/home/' + y + '/newdir/')

os.chdir('/home/'+y+'/newdir/')

url = ("http://example.com/Examplefile.ex")
file_name = url.split('/')[-1]
u = urllib2.urlopen(url)
f = open(file_name, 'wb')
meta = u.info()
file_size = int(meta.getheaders("Content-Length")[0])
print "Downloading: %s Bytes: %s" % (file_name, file_size)

file_size_dl = 0
block_sz = 8192
while True:
buffer = u.read(block_sz)
if not buffer:
break

file_size_dl += len(buffer)
f.write(buffer)
status = r"%10d [%3.2f%%]" % (file_size_dl, file_size_dl * 100. / file_size)
status = status + chr(8)*(len(status)+1)
print status,

f.close()

最佳答案

对不起伙计们,我是愚蠢的,但要回答我添加的问题

os.chdir('/home/' + y + '/newdir/')

紧接在第一个 if 语句之后:

import os
import getpass
import urllib2

y = getpass.getuser()

if not os.access('/home/' + y + '/newdir/', os.F_OK):
print("Making New Directory")
os.mkdir('/home/' + y + '/newdir/')

os.chdir('/home/'+y+'/newdir/')

url = ("http://example.com/Examplefile.ex")
file_name = url.split('/')[-1]
u = urllib2.urlopen(url)
f = open(file_name, 'wb')
meta = u.info()
file_size = int(meta.getheaders("Content-Length")[0])
print "Downloading: %s Bytes: %s" % (file_name, file_size)

file_size_dl = 0
block_sz = 8192
while True:
buffer = u.read(block_sz)
if not buffer:
break

file_size_dl += len(buffer)
f.write(buffer)
status = r"%10d [%3.2f%%]" % (file_size_dl, file_size_dl * 100. / file_size)
status = status + chr(8)*(len(status)+1)
print status,

f.close()

关于python - 如何将文件下载到特定目录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9628770/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com