Если вы увидите страницу источника входа в Yahoo, вы увидите, что есть много других параметров, которые вы не отправляете в своем запросе.
<input type="hidden" name=".tries" value="1">
<input type="hidden" name=".src" value="fpctx">
<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="a0bljsd77uima">
<input type="hidden" name=".v" value="0">
<input type="hidden" name=".challenge" value="sCm6Z8Bv1vy78LBlEd8dnFsmbit1">
<input type="hidden" name=".yplus" value="">
...
Полагаю, именно поэтому Yahoo понимает логинне удалось и отправляет вас на страницу входа снова.Эта страница входа - это то, что вы видите как ответ.
Многие сайты стараются избегать программных входов в систему (чтобы избежать ботов или других проблем безопасности), поэтому может быть трудно сделать то, что вы пытаетесь.Вы можете:
- Использовать официальные публичные API Yahoo, когда это возможно.
- Попробуйте использовать другие библиотеки Java, которые имитируют просмотр пользователя (например, HTTPUnit или HtmlUnit , есть много других) и «фальсифицирует» пользователя, как если бы он перемещался по страницам Yahoo.