Я создаю приложение для создания графика (используя matplotlib ) и хотел бы, чтобы люди могли отправлять себе готовый продукт; У меня уже работает, так что я могу загрузить его в виде файла, я просто хотел бы интегрировать API.
У меня есть OSError: [Errno 22] Недопустимый аргумент: 'data: image / png; base64 ', {{plot_url}}
Однако электронное письмо также не отправляется, поэтому я уверен, что после его сортировки будет больше ошибок!
Python:
def send_simple_message():
form_data = request.form
email_address = form_data["email_address"]
return request.form(
"api_details",
auth=("api_details"),
files=[("Your Graph", open(href="data:image/png;base64, {{ plot_url }}"))],
data ={
"from": "Graph Generator <email_address_with_API-_key>",
"to": [int(form_data["email_address"])],
"subject": "Your graph",
"text": "Please find attached your graph!"})
return render_template('thank_you.html'))
HTML:
<p class="instructions">Here is your graph!</p>
<div class="graphplot"> <img src="data:image/png;base64, {{ plot_url }}"></div>
<div class="child three container">
<p>Can you see how all your data points are plotted onto it? What will you plot next?</p>
<form methods="post" action="/">
<button type="submit" class="btn btn-primary"><a href="data:image/png;base64, {{ plot_url }}" download="Graph">Download your graph
</a></button></form>
<br>
<form action="/">
<button type="submit" class="btn btn-primary">Plot again</button></form>
<div id="contact-form" class="col" width=200px >
<form method="post" action="/thank_you">
<p>Enter your email address to send yourself your graph!</p>
<input type="email" id="email_address" name="email_address" class="form-control" required>
<input type="submit" class="btn btn-primary" value="Submit" id="submit-button">
</form>
</div>
Что мне нужно изменить, чтобы это работало?
Спасибо!