Как отправить веб-формы с использованием Python? - PullRequest
3 голосов
/ 24 сентября 2010

Прежде всего, извините, если этот вопрос немного расплывчатый и бессвязный! Я в порядке с Python, но я никогда не делал ничего связанного с HTTP раньше.

Я пытаюсь автоматизировать отправку веб-формы, и, прочитав некоторые из этой страницы , я понимаю, что мне нужно выполнить запрос POST. Я также нашел фрагмент кода, демонстрирующий модуль urllib:


import urllib
params = urllib.urlencode({'spam': 1, 'eggs': 2, 'bacon': 0})
f = urllib.urlopen("http://www.musi-cal.com/cgi-bin/query", params)
print f.read()

Но я все еще не совсем понимаю, что я делаю. Мне нужно как-то вызвать «отправить», и я предполагаю, что реальные данные, которые я отправляю, будут где-то указываться в параметрах?

1 Ответ

0 голосов
/ 24 сентября 2010

Код должен делать то, что вы хотите.

Все данные, которые вы хотите использовать, должны входить в параметры, как в вашем примере. Когда параметры включены в качестве аргумента для urlopen, будет использоваться запрос POST (вместо GET).

Просто позвонив по адресу urlopen, я считаю, что запрос POST будет отправлен. Однако если вы хотите получить ответ, вам нужно использовать f.read ().

...