Итак, я начал с Mechanize, и, по-видимому, первое, что я пробовал, - это высоко ориентированный JavaScript-сайт на уровне обезьян-носорогов.
Теперь то, что я застрял, представляет форму.
Как правило, я бы сделал submit, используя встроенную функцию submit() Mechanize.
import mechanize
browser = mechanize.Browser()
browser.select_form(name = 'foo')
browser.form['bar'] = 'baz'
browser.submit()
Таким образом, он будет использовать кнопку отправки, доступную в HTML-форме.
Тем не менее, сайт, на котором я застрял, должен был быть тем, который не использует кнопки отправки HTML... Нет, они пытаются быть гуру JavaScript и делают передачу через JavaScript.
Обычный файл submit() не работает с этим.
Итак... Есть ли способ обойти это?
Любая помощь приветствуется. Большое спасибо!
- [Edit] -
Функция JavaScript, на которую я застрял:
function foo(bar, baz) {
var qux = document.forms["qux"];
qux.bar.value = bar.split("$").join(":");
qux.baz.value = baz;
qux.submit();
}
Что я сделал в Python (и что не работает):
def foo(browser, bar, baz):
qux = browser.select_form("qux")
browser.form[bar] = ":".join(bar.split("$"))
browser.form[baz] = baz
browser.submit()