Используйте механизировать, чтобы войти в megaupload

Я пытаюсь использовать следующий код для входа в megaupload. Мой вопрос в том, как я могу успешно войти в систему? Я распечатываю текущий URL-адрес в конце кода, но когда я запускаю скрипт, он просто возвращает www.megaupload.com.

import mechanize
import cookielib
from BeautifulSoup import BeautifulSoup
import html2text

# Browser
br = mechanize.Browser()

# Cookie Jar
cj = cookielib.LWPCookieJar()
br.set_cookiejar(cj)

# Browser options
br.set_handle_equiv(True)
br.set_handle_gzip(True)
br.set_handle_redirect(True)
br.set_handle_referer(True)
br.set_handle_robots(False)

# Follows refresh 0 but not hangs on refresh > 0
br.set_handle_refresh(mechanize._http.HTTPRefreshProcessor(), max_time=1)

# User-Agent (this is cheating, ok?)
br.addheaders = [('User-agent', 'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.1) Gecko/2008071615 Fedora/3.0.1-1.fc9 Firefox/3.0.1')]

# The site we will navigate into, handling it's session
br.open('http://www.megaupload.com/?c=login')

# Select the first (index zero) form
br.select_form('loginfrm')

#User credentials
br.form['username'] = 'USERNAMEGOESHERE'
br.form['password'] = 'PASSWORDGOESHERE'

br.submit()


#prints out the current log in
print br.geturl()

person ChrisC    schedule 12.12.2010    source источник


Ответы (1)


Найдите сообщение об ошибке в теле ответа:

"Username and password do not match" in br.response().read()

Или проверьте, получили ли вы ожидаемый файл cookie (простой пример, настройте по мере необходимости):

any(c.domain == ".megaupload.com" and c.name == "user" for c in cj)
person tokland    schedule 12.12.2010
comment
Спасибо, я действительно смог проверить приветствие USERNAME. Я попытался проголосовать за вас, но я новый пользователь, и мне нужно 15 репутации, прежде чем я смогу это сделать. - person ChrisC; 12.12.2010
comment
@ user520574, ты тоже не можешь выбрать это как ответ? ладно, не суть. - person tokland; 12.12.2010
comment
Я смог выбрать его в качестве ответа, я не видел этого варианта раньше. Спасибо еще раз. - person ChrisC; 12.12.2010