使用download()函数实现Python批量下载文件的方法和思路
发布时间:2024-01-16 09:27:25
使用download()函数实现Python批量下载文件的方法和思路:
1. 首先,需要准备待下载的文件列表。可以使用一个包含文件URL的列表作为输入。
file_urls = ['http://example.com/file1.txt', 'http://example.com/file2.txt', ...]
2. 定义一个下载函数download(url, filename),用于下载单个文件。这个函数可以使用Python的urllib.request模块来下载文件。
import urllib.request
def download(url, filename):
urllib.request.urlretrieve(url, filename)
3. 遍历文件列表,调用download()函数来下载每个文件。可以使用一个循环来实现这一步骤。
for url in file_urls:
filename = get_filename(url) # 从URL中提取文件名
download(url, filename)
在上面的代码中,get_filename()是一个辅助函数,用于从文件URL中提取文件名。可以使用Python的os.path模块来获取文件名。
import os
def get_filename(url):
return os.path.basename(url)
4. 完整的实现如下所示:
import urllib.request
import os
def download(url, filename):
urllib.request.urlretrieve(url, filename)
def get_filename(url):
return os.path.basename(url)
file_urls = ['http://example.com/file1.txt', 'http://example.com/file2.txt', ...]
for url in file_urls:
filename = get_filename(url)
download(url, filename)
使用例子:
import urllib.request
import os
def download(url, filename):
urllib.request.urlretrieve(url, filename)
def get_filename(url):
return os.path.basename(url)
file_urls = ['http://example.com/file1.txt', 'http://example.com/file2.txt']
for url in file_urls:
filename = get_filename(url)
download(url, filename)
上述代码会下载file_urls列表中指定的文件,并保存到当前目录下以文件的名称命名的文件中。
