Você não precisa do Wireshark para isso. O Firebug é perfeitamente capaz de separar solicitações e respostas diretamente do Firefox.
Estou tentando encontrar um código python que faça login na minha caixa de correio no yahoo.com do "Google App Engine". Eu recebi este código:
import urllib, urllib2, cookielib
url = "https://login.yahoo.com/config/login?"
form_data = {'login' : 'my-login-here', 'passwd' : 'my-password-here'}
jar = cookielib.CookieJar()
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(jar))
form_data = urllib.urlencode(form_data)
# data returned from this pages contains redirection
resp = opener.open(url, form_data)
# yahoo redirects to http://my.yahoo.com, so lets go there instead
resp = opener.open('http://mail.yahoo.com')
print resp.read()
O autor deste script examinou o script HTML do formulário de login do yahoo e veio com este script.
Esse formulário de login contém dois campos, um para o Yahoo! ID e outro é para a senha dos usuários.
No entanto, quando experimentei esse código (substituindo mu login Yahoo real por 'meu-login-aqui' e minha senha real por 'minha-senha-aqui'), ele apenas retorna o formulário de login para mim , o que significa que algo não funcionou direito.
Outro apoiador sugeriu que eu enviasse um hash MD5 da minha senha, em vez de uma senha simples.
Ele também notou que nesse formulário de login existem muitos outros campos ocultos além dos campos de login e senha (ele os chamou de "proteções CSRF") com os quais eu também teria que lidar:
<input type="hidden" name=".tries" value="1">
<input type="hidden" name=".src" value="ym">
<input type="hidden" name=".md5" value="">
<input type="hidden" name=".hash" value="">
<input type="hidden" name=".js" value="">
<input type="hidden" name=".last" value="">
<input type="hidden" name="promo" value="">
<input type="hidden" name=".intl" value="us">
<input type="hidden" name=".bypass" value="">
<input type="hidden" name=".partner" value="">
<input type="hidden" name=".u" value="bd5tdpd5rf2pg">
<input type="hidden" name=".v" value="0">
<input type="hidden" name=".challenge" value="5qUiIPGVFzRZ2BHhvtdGXoehfiOj">
<input type="hidden" name=".yplus" value="">
<input type="hidden" name=".emailCode" value="">
<input type="hidden" name="pkg" value="">
<input type="hidden" name="stepid" value="">
<input type="hidden" name=".ev" value="">
<input type="hidden" name="hasMsgr" value="0">
<input type="hidden" name=".chkP" value="Y">
<input type="hidden" name=".done" value="http://mail.yahoo.com">
Ele disse que eu deveria fazer o seguinte:
Eu realmente não sei como realizar os dois primeiros desses três passos. Acabei de baixar o "Wireshark" e tentei capturar alguns pacotes lá. No entanto, não sei como "simular login normal e salvar a página de login". Além disso, não sei como salvar cabeçalhos POST $ GET com o "Wireshark". Alguém pode, por favor, me guiar através destes dois passos em "Wireshark"? Ou pelo menos me diga com o que eu deveria começar. Obrigado.
Você não precisa do Wireshark para isso. O Firebug é perfeitamente capaz de separar solicitações e respostas diretamente do Firefox.
Quando você foi solicitado a
simulate normal login and save the login page
foi um pedido para você acessar sua conta do Yahoo como faria normalmente em um navegador da Web e salvar a página.
Quanto a variáveis HTTP POST / GET & salvando-os, eu não tenho experiência, mas você provavelmente deve dar uma olhada em esta SO resposta
Parece que você é o OP para o Q em SO -.-