Я пытаюсь использовать urllib для заполнения формы, а затем получить результаты из отправленных данных. Приложение, на которое я отправляю сообщение, находится на сервере, к которому мне нужно войти через appgate, чтобы получить к нему доступ. Форма POST (которую я вижу в ответе в терминале) выглядит так:
<form action="accuracy-upload3" method="post"
enctype="multipart/form-data">
Human: <input type="file" id="human" name="human"><br>
Machine: <input type="file" id="machine" name="machine"><br>
<input type="submit" class="submit" value="Submit" />
</form>
Но даже если метод "POST", я, кажется, вместо этого выполняю GET, поскольку все, что возвращается, - это html из url, а не ответ от url на параметр 'action'. Мой код выглядит следующим образом:
url = "https://accuracy3.html"
filename1 = 'human.txt'
filename2 = 'machine.txt'
filedata1 = open(filename1).read()
filedata2 = open(filename2).read()
values = {
"Human": filedata1,
"id": "human",
"name": "human",
"Machine": filedata2,
"id": "machine",
"name": "machine",
"value": "Submit"
}
req = urllib2.Request(url, data = urllib.urlencode(values), headers
=
{"Content-type": "application/x-www-form-urlencoded"})
response = urllib2.urlopen(req)
print response.read()
С Выполнение POST-вызова вместо GET с использованием urllib2 Я вижу, что он должен отправлять POST, так как я отправил данные, но он этого не делает.
Кто-нибудь может увидеть, в чем проблема с моим скриптом?