Tôi muốn đặt một nút trên trang web được tạo bình và cho phép người dùng tải xuống trang html dưới dạng tệp khi người dùng nhấp vào nút. Những gì tôi tưởng tượng là một cái gì đó giống như lưu html rendered vào BytesIO
và gửi nó qua send_file
, nhưng tôi không thể tìm thấy cách lưu trang được hiển thị vào đối tượng tệp. Làm thế nào tôi có thể làm điều đó?Tải xuống trang html do bình tạo ra
5
A
Trả lời
4
Bạn có thể thử một cái gì đó như thế này:
import StringIO
from flask import Flask, send_file, render_template
def page_code():
strIO = StringIO.StringIO()
strIO.write(render_template('hello.html', name='World'))
strIO.seek(0)
return send_file(strIO,
attachment_filename="testing.txt",
as_attachment=True)
Nó không phải là thử nghiệm nhưng phải cung cấp cho bạn một ý tưởng.
+0
Cảm ơn bạn rất nhiều! Tôi không mong đợi '' 'render_template''' trả về toàn bộ trang html trong một chuỗi, tôi nghĩ nó sẽ làm nhiều hơn đằng sau cảnh vì tài liệu API không nói gì về giá trị trả về của nó, hoặc có thể Tôi chỉ bỏ lỡ nó. Điều này giải quyết vấn đề. –
Các vấn đề liên quan
- 1. Tạo kiểu HTML do Microsoft tạo ra
- 2. Selenium tải xuống trang đầy đủ html
- 3. Tải xuống trang html và nội dung của trang
- 4. Tạo trang tải xuống trong ColdFusion 8
- 5. Tải xuống js đã tạo html với C#
- 6. Tải xuống PDF do TCPDF tạo ra, sau khi gửi bài đăng
- 7. Tải xuống html bằng python?
- 8. HTML: buộc tải xuống PDF
- 9. Cuộn xuống khi tải trang
- 10. Trình duyệt web WPF - tải xuống HTML?
- 11. Trong Java và HtmlUnit, làm cách nào để đợi trang kết quả tải xuống và tải xuống dưới dạng HTML?
- 12. AddType trong htaccess khiến trang tải xuống
- 13. Trình tải trang trong trang html
- 14. Tải trang được cuộn xuống dưới cùng
- 15. Ivy tải xuống nhiều bình hơn dự kiến
- 16. Silverlight giảm xuống html
- 17. Tải mẫu tải xuống HTML/erb trong Rails cho AngularJS
- 18. Webpack html plugin được không tạo ra html
- 19. Tạo một trang HTML JavaDoc
- 20. Tải lại trang bắt buộc bằng neo html (#) - HTML & JS
- 21. Tải xuống applet java từ trang web
- 22. 'array.each do | block |' bao gồm các kết quả của câu lệnh trong tạo ra Haml HTML
- 23. Tôi làm cách nào để tạo liên kết tải xuống bằng HTML?
- 24. Cách dừng tải div trang HTML
- 25. Làm cách nào để tránh XSS trong tải xuống HTML?
- 26. Tải xuống một div trong trang HTML dưới dạng pdf bằng cách sử dụng javascript
- 27. Symfony2 tạo và tải xuống tệp zip
- 28. HTML <video loop> - Đã tải xuống nhiều lần
- 29. Tạo và tải xuống CSV với PHP
- 30. Mã C# nhanh nhất để tải xuống trang web
Bạn có nghĩa là như ctrl-s hoặc nhấp chuột phải> lưu trang dưới dạng? Tại sao không chỉ để họ làm điều đó? Điều đó thậm chí có thể chăm sóc hình ảnh và các tài nguyên được liên kết khác. – davidism
Cảm ơn bạn đã bình luận! Có một vài lý do; trước hết, trang web này là dành cho những người không am hiểu công nghệ cao, vì vậy tôi không mong đợi họ biết mẹo đó; thứ hai, tôi muốn cung cấp cho họ gần như giống nhau nhưng không chính xác cùng một trang web; cuối cùng, tôi không đặc biệt tin rằng các trình duyệt thực hiện công việc lưu một trang web một cách rất tốt, bởi vì tôi đã trải qua một vài thất bại cá nhân. Bằng cách này, trang web này là về tạo ra dữ liệu khoa học để nội dung và đối tượng mục tiêu là một chút khác nhau từ một trang web thông thường. –