Hola Al.
A la excelente explicación de dec, solamente hará falta añadir que regularmente los sitios manejan una "sesión", cuyo ID guardan en una galleta (cookie) y requieren de este para poder reconocer que usuario ha iniciado sesión y si esta no ha expirado.
Esto también podes manejarlo con las Indy, que cuentan con la maquinaria necesaria para esta tarea: TidCookieManager, que luego asocias a la propiedad CookieManager del ya mencionado TidHTTP.
Finalmente comentar que no hace falta que bajes la página de login cada vez que realices el paso 1/2 de tu explicación. Basta con que realices la llamada -normalmente un POST- que ejecutaría el navegador cuando un usuario humano haga clic en el botón "login", y estes atento a recibir y almacenar (puede ser en memoria) el cookie correspondiente a la sesión.
Claro que esta es la generalidad de los casos, pero puede haber páginas que implementen en reconocimiento del usuario de alguna otra manera, para ellas habrá que hacer algo de análisis de comportamiento, pero
siempre son cosas que pueden manejarse desde delphi.
Hasta luego.