Используйте HttpResponse в представлении, которое вы используете, чтобы показать сгенерированный отчет вместо публикации с помощью urllib.Если у вас есть что-то вроде
def report_view(request):
...
return render_to_response(request,....)
Затем используйте объект ответа для создания архива
def report_view(request):
...
archive_link = "/some/nice/url/to/the/archive"
response = render_to_response(request, ... { "archive-link" : archive_link})
store_archive(response)
return response
def store_archive(response):
# here you will need to find css/js files etc
# and bundle them in whatever type of archive you like
# then temporarily store that archive so it can be accessed by the archive_link
# you previously used in your view to allow for downloading
def report_archive_view(request):
# serve the temporarily stored archive, then delete it if you like
Вы можете найти все, что вам нужно знать о HttpResponse вДжанго документы .
Хотя это может сработать для вас, я сомневаюсь, что это то, что вы действительно ищете, может быть, то, что вы действительно ищете, это создать отчет в формате PDF с использованием ReportLab ?