Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

564
Visualizações
Frasco: descargue un archivo csv al hacer clic en un botón

Acabo de empezar con Flask/Python. Lo que quiero lograr es que tengo un botón de descarga en mi HTML y llama a la siguiente función:

 function downloadPlotCSV() { $.ajax({ url: "/getPlotCSV", type: "post", success: function(data) { dataPlot = JSON.parse(data); console.log(dataPlot); } }); }

El código del matraz incompleto es:

 @app.route('/getPlotCSV', methods = ['POST']) def plotCSV(): data = open("outputs/Adjacency.csv")

El problema al que me enfrento es que no puedo encontrar una manera de descargar este archivo csv o devolverlo como una cadena JSON para poder descargarlo usando Javascript. ¿Alguna idea de cómo puedo enviarlo como JSON o tal vez descargarlo a través de Flask? ¿Cuál es la mejor manera?

over 4 years ago · Santiago Trujillo
3 Respostas
Responde à pergunta

0

Aquí hay una forma de descargar un archivo CSV sin Javascript:

 #!/usr/bin/python from flask import Flask, Response app = Flask(__name__) @app.route("/") def hello(): return ''' <html><body> Hello. <a href="/getPlotCSV">Click me.</a> </body></html> ''' @app.route("/getPlotCSV") def getPlotCSV(): # with open("outputs/Adjacency.csv") as fp: # csv = fp.read() csv = '1,2,3\n4,5,6\n' return Response( csv, mimetype="text/csv", headers={"Content-disposition": "attachment; filename=myplot.csv"}) app.run(debug=True)
over 4 years ago · Santiago Trujillo Relatório

0

Puede usar flask.send_file() para enviar un archivo estático:

 from flask import send_file @app.route('/getPlotCSV') # this is a job for GET, not POST def plot_csv(): return send_file('outputs/Adjacency.csv', mimetype='text/csv', attachment_filename='Adjacency.csv', as_attachment=True)
over 4 years ago · Santiago Trujillo Relatório

0

En primer lugar, debe importar desde el matraz make_response , que generará su respuesta y creará una variable, algo así como response . En segundo lugar, haga response.content_type = "text/csv" En tercer lugar, devuelva su respuesta.

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda