Estoy intentando automatizar un inicio de sesión para la página web de un curso. Tengo que consultar este semestre. Sé que la solicitud POST que estoy haciendo se está haciendo correctamente porque llego a la página de redireccionamiento intermedio que solo obtienes con un inicio de sesión exitoso.
Básicamente estoy golpeando una de esas This page should automatically redirect. If nothing is happening please use the continue link below.
páginas. Desafortunadamente, debido a que curl no sigue esta redirección final, no parece estar configurando las últimas cookies para mantener mi sesión.
He estado leyendo man
for curl, pero parece que no puedo encontrar la forma correcta de hacerlo ( --max-time
y --max-redirs
es lo que he intentado y no estoy trabajando).
¿Alguien puede decirme qué debo hacer para resolver esto?
Esto es con lo que estoy trabajando
LOGINURL="http://www.[redacted].edu/login/index.php" # This is not https because they don't support it.
COURSEURL="http://www.[redacted].edu/course/[redacted]"
USERAGENT="Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:31.0) Gecko/20100101 Firefox/31.0"
COOKIEJAR="${HOME}/edu.cookies"
POSTDATA="[redacted]"
curl -o "index.html" --referer "${LOGINURL}" --user-agent "${USERAGENT}" --cookie-jar "${COOKIEJAR}" --data "${POSTDATA}" "${LOGINURL}"
curl -o "course.html" --referer "${LOGINURL}" --user-agent "${USERAGENT}" --cookie "${COOKIEJAR}" "${COURSEURL}"
PS, el enlace que se proporciona en la página de redireccionamiento intermedio es el mismo enlace que la URL de COURSEURL, por lo que el curvado manual no funciona.
fuente
-L
.Respuestas:
Me siento absolutamente tonta. La
-L
opción era todo lo que necesitaba. Desde la página del manual:fuente