Назад | Перейти на главную страницу

wget: загрузить веб-сайт, защищенный паролем, с помощью формы

У меня проблема с загрузкой веб-сайта с помощью wget.

Сначала мне нужно войти на сайт с именем пользователя и паролем:

wget --save-cookies cookies.txt --post-data --cookies=on --keep-session-cookies 
     --post-data="strUser=username&strPW=password" 
     http://hostname/wwwawelle/member/nixlog.asp

Затем я пытаюсь загрузить весь сайт http: // имя хоста / wwwawelle / member / :

wget -k -r -m -np --load-cookies cookies.txt 
     http://hostname/wwwawelle/member/80_01_member.asp

Я получаю ответ, в котором говорится, что я не авторизован, и меня перенаправляют на:

http://hostname/wwwawelle/member/nixlog.asp?grund=notloggedin

Любые идеи?

HttpFox

00:00:07.712    0.193   597 301 POST    302 Redirect to: 80_01_member.asp   http://hostname/wwwawelle/member/login.asp
00:00:07.943    0.255   481 11957   GET 200 text/html   http://hostname/wwwawelle/member/80_01_member.asp
00:00:08.232    0.060   428 (6054)  GET (Cache) text/css    http://hostname/wwwawelle/style.css
00:00:08.260    0.051   420 (589)   GET (Cache) application/x-javascript    http://hostname/wwwawelle/news/jscr_inc.js

Печенье

ASPSESSIONIDCSATRCQQ    APPIOGADBMLHOMFHCALPBFNL    /   hostname    End Of Session

POST-данные

strUser username
strPW   password
Abschicken  Anmelden

wget cookies.txt

# HTTP cookie file.
# Generated by Wget on 2011-03-28 14:23:17.
# Edit at your own risk.

hostname    FALSE   /   FALSE   0   ASPSESSIONIDCSATRCQQ    EBAJOGADDHGHCANLKJCMDCPP

Если сайт сохраняет сеанс с помощью файлов cookie, вы можете войти в систему с помощью браузера, а затем попросите wget использовать соответствующий файл cookie для продолжения доступа к сайту. Однако, если сайт использует другие средства, такие как переменные PHP $ _SESSION, вам не повезло.

Если это сайт, к которому у вас есть законный доступ, безусловно, вы можете настроить другие средства доступа. С другой стороны, если у вас нет законного доступа, и вы просто пытаетесь выщелкнуть чужой сайт, как я понимаю из вашего вопроса, я надеюсь, что вы потерпите неудачу.

Возможно, сайт проверяет referer, user-agent, и т.д.

Проверьте HttpFox и Данные о вмешательстве Плагины Firefox. Они позволяют вам видеть / управлять данными, поступающими на / с любого сервера. Обязательно отметьте все переадресации и файлы cookie, поступающие с сервера.

Попробуйте это перед URL:

wget username:password@http://me.com/me.html