Использование функции отправки Twill, когда кнопка отправки сайта локализована (Python)

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

MissingSchema: Invalid URL u'/index.php?r=site/login': No schema supplied. 
Perhaps you meant http:///index.php?r=site/login?

Из того, что я могу понять, это происходит потому, что веб-сайт перенаправляет себя на страницу на сервере. Есть ли способ заставить кнопку перенаправить на полную страницу вместо локального файла на сервере? Или я даже прав, почему эта ошибка происходит?

Заранее спасибо

Суть моего кода:

from twill.commands import *
go('panel.picklehosting.com/index.php?r=site/login')
showforms()
formclear('1')
fv("1", "name", "usrname")
fv("1", "password", "mypass")
submit()

1 ответ

Решение

У меня возникла та же проблема с сайтом, который я создаю, но я думаю, что решил ее.

используйте функцию formaction() для twill, чтобы установить действие для нужной страницы. Например

    from twill.commands import *
    go('http://example.com/login')
    showforms() 
    fv("1", "nameField", "username")
    fv("1", "password", "password")
    formaction('form','http://example.com/login')
    submit("4")
    show()
    go('http://example.com/admin/')

или в вашем случае

from twill.commands import *
go('panel.picklehosting.com/index.php?r=site/login')
showforms()
formclear('1')
fv("1", "name", "usrname")
fv("1", "password", "mypass")
formaction('form','panel.picklehosting.com/index.php?r=site/login')
submit()
go('panel.picklehosting.com/yourpage.php')
Другие вопросы по тегам