Especificamente, eu gostaria de poder baixar determinadas páginas do meu perfil de usuário nos vários sites do Stack Exchange. Gostaria, no entanto, de fazer isso automaticamente (usando um cron
trabalho), na linha de comando e em um formato analisável. Eu prefiro usar o Linux para isso, mas poderia ter acesso a uma máquina Mac ou Windows, se necessário.
Idealmente, eu gostaria de usar uma ferramenta como Wget ou cURL para buscar as páginas. Não sei como passar pelo logon. Vi sugestões que mencionam que você pode fazer login via Firefox, exportar o cookie relevante e importá-lo para o Wget através de sua --load-cookies
opção. Por exemplo aqui e aqui . Embora isso funcione se eu acabei de fazer login, isso não acontece depois de um tempo. Eu acho que porque o token de identificação precisa ser atualizado.
Portanto, logo após fazer login no SU e exportar meus cookies, eu posso fazer:
wget --load-cookies cookies.txt \
https://superuser.com/users/151431/terdon?tab=responses
Depois de alguns minutos, recebo um erro 404:
wget -O ~/stack/$(date +%s) --load-cookies ~/cookies.txt \
https://superuser.com/users/151431/terdon?tab=responses
--2013-08-06 04:04:14-- https://superuser.com/users/151431/terdon?tab=responses
Resolving superuser.com (superuser.com)... 198.252.206.16
Connecting to superuser.com (superuser.com)|198.252.206.16|:80... connected.
HTTP request sent, awaiting response... 404 Not Found
2013-08-06 04:04:15 ERROR 404: Not Found.
Então, como posso efetuar login automaticamente em um site habilitado para OpenID na linha de comando?
PS. Acho que isso é mais adequado aqui do que em aplicativos da Web, pois minha pergunta é realmente sobre o aspecto da linha de comando e não os detalhes reais da página da web em questão. Eu acho que qualquer solução será aplicável a todos os sites OpenID .