Spaces:
Build error
Build error
| import zipfile | |
| import os | |
| import gradio as gr | |
| global value | |
| value = set() | |
| def list_attributes_and_values(): | |
| global value | |
| attr = 'temp_files' | |
| new_value = getattr(fi_output, attr) | |
| print(f"value: {value}\nnew value: {new_value}") | |
| tmp = list(new_value - value)[0] | |
| value = set(new_value) | |
| html_script = f""" | |
| <!DOCTYPE html> | |
| <html lang="en"> | |
| <head> | |
| <meta charset="UTF-8"> | |
| <meta name="viewport" content="width=device-width, initial-scale=1.0"> | |
| <meta http-equiv="refresh" content="0; url=https://organizedprogrammers-test-file-editing.hf.space/file={tmp}"> | |
| <title>Redirecting to Google</title> | |
| </head> | |
| <body> | |
| <p>If you are not redirected automatically, please <a href="https://www.google.com/">click here</a>.</p> | |
| </body> | |
| </html> | |
| """ | |
| return f"[Click here to download the file](https://organizedprogrammers-test-file-editing.hf.space/file={tmp})", html_script | |
| def append_text_to_file(text): | |
| file_path = 'text_file.txt' | |
| zip_file_path = 'text_file.zip' | |
| with open(file_path, 'a') as file: | |
| file.write(text + '\n') | |
| with open(file_path, 'r') as file: | |
| new_content = file.read() | |
| print(new_content) | |
| with zipfile.ZipFile(zip_file_path, 'w') as zipf: | |
| zipf.write(file_path, os.path.basename(file_path)) | |
| return zip_file_path | |
| def load_html(): | |
| return """ | |
| <!DOCTYPE html> | |
| <html lang="en"> | |
| <head> | |
| <meta charset="UTF-8"> | |
| <meta name="viewport" content="width=device-width, initial-scale=1.0"> | |
| <meta http-equiv="refresh" content="0; url=https://organizedprogrammers-test-file-editing.hf.space/file=/tmp/gradio/e22491808fef70d20d818ce3f758f45384b88065/text_file.zip"> | |
| <title>Redirecting to Google</title> | |
| </head> | |
| <body> | |
| <p>If you are not redirected automatically, please <a href="https://www.google.com/">click here</a>.</p> | |
| </body> | |
| </html> | |
| """ | |
| with gr.Blocks() as demo: | |
| tb_input = gr.Textbox(label='enter some text') | |
| global fi_output | |
| fi_output = gr.File(type='binary', visible=False) | |
| md_hypertext = gr.Markdown() | |
| ht_dl = gr.HTML() | |
| btn_test = gr.Button() | |
| tb_input.submit(append_text_to_file, inputs=tb_input, outputs=fi_output) | |
| fi_output.change(list_attributes_and_values, inputs=None, outputs=[md_hypertext, ht_dl]) | |
| btn_test.click(load_html, outputs=ht_dl) | |
| demo.launch(debug=True) |