在Django框架中,你可以使用Python的requests
库进行文件下载。首先,确保你已经安装了requests
库,如果没有安装,可以使用以下命令安装:
pip install requests
接下来,你可以在Django视图函数中使用requests
库来下载文件。以下是一个简单的示例:
- 在你的Django应用的
views.py
文件中,导入所需的库:
import requests from django.http import FileResponse
- 创建一个视图函数来处理文件下载请求:
def download_file(request): # 文件URL file_url = 'https://example.com/path/to/your/file.ext' # 发送请求并获取响应 response = requests.get(file_url) # 检查请求是否成功 if response.status_code == 200: # 获取文件名 file_name = 'downloaded_file.ext' # 创建FileResponse对象 file_response = FileResponse(response, content_type='application/octet-stream') file_response['Content-Disposition'] = f'attachment; filename="{file_name}"' return file_response else: # 处理错误情况 return HttpResponseServerError('Failed to download the file.')
- 在
urls.py
文件中,为视图函数添加一个URL模式:
from django.urls import path from . import views urlpatterns = [ # 其他URL模式... path('download/', views.download_file, name='download_file'), ]
现在,当用户访问/download/
URL时,Django将使用requests
库从指定的URL下载文件,并将其作为附件发送给用户。请注意,这个示例仅用于演示目的,实际应用中可能需要根据需求进行相应的调整。