Я пытаюсь загрузить файл изображения в браузер с помощью механизации.
Хотя ошибки нет, загруженный файл не отображается, когда я проверяю вручную в браузере (отправка / сохранение).
Я использую следующий код для загрузки файлов
import mechanize as mc
br = mc.Browser()
br.set_handle_robots(False)
br.select_form(nr=0)
br.form.add_file(open("test.png"), content_type="image/png",
filename='before',name="ctl00$ContentPlaceHolder1$fileuploadBeforeimages")
br.submit("ctl00$ContentPlaceHolder1$cmdSave")
# this is supposed to save the form on the webpage. It saves the texts in the other fields, whereas the image does not show up.
Кажется, команда add file работает. Я могу подтвердить это, потому что когда я печатаю br.forms()[0]
, отображаются данные файла (<FileControl(ctl00$ContentPlaceHolder1$fileuploadBeforeimages=before)>
).
Но в этом фрагменте кода нет никаких признаков файла изображения. Я проверил несколько примеров, которые включают br.submit()
без какого-либо специального управления кнопками, когда я делаю это, ни одна страница не сохраняется на сайте.
Чего мне не хватает?
Заранее спасибо.
EDIT
Когда я вручную пытаюсь загрузить файл, я вижу всплывающее окно с запросом подтверждения. При проверке это присутствует как
onchange="if (confirm('Upload ' + this.value + '?')) this.form.submit();"
Я не уверен, является ли это элементом JavaScript
, и механизация не может пройти через эту часть для функции загрузки. Может кто-нибудь это подтвердить .?