Как скачать веб-страницу, требующую имя пользователя и пароль? - PullRequest
2 голосов
/ 25 ноября 2010

Например, я хочу скачать эту страницу после ввода имени пользователя и пароля:

http://forum.ubuntu-it.org/

Я пробовал использовать wget, но он не работает.

Есть ли решение с питоном?

Вы можете проверить с этими именем пользователя и паролем:

username: johnconnor
password: hellohello

Ответы [ 3 ]

2 голосов
/ 25 ноября 2010

Вы можете использовать модуль urllib2 , и с этим можно выполнять базовую аутентификацию и аутентификацию на основе форм (с поддержкой файлов cookie).

Вот хороший учебник по вашему вопросу.

2 голосов
/ 25 ноября 2010

Попробуйте механизировать модуль. Это в основном программный интерфейс браузера.

1 голос
/ 25 ноября 2010

Как говорит @robert, используйте механизировать.

Для начала:

from mechanize import Browser
b = Browser()
b.open("http://forum.ubuntu-it.org/index.php")
b.select_form(nr=0)
b["user"] = "johnconnor"
b["passwrd"] = "hellohello"
b.submit()

response = b.response().read()
if "Salve <b>johnconnor</b>" in response:
    print "Logged in!"
...