Estoy tratando de descargar Xcode desde el sitio de desarrollador de Apple usando solo wget o curl. Creo que estoy almacenando con éxito la cookie que necesito para descargar el archivo .dmg, pero no estoy del todo seguro.Descarga de Xcode con wget o curl
Cuando ejecuto este comando:
wget \
--post-data="theAccountName=USERNAME&theAccountPW=PASSWORD" \
--cookies=on \
--keep-session-cookies \
--save-cookies=cookies.txt \
-O - \
https://developer.apple.com/ios/download.action?path=/ios/ios_sdk_4.1__final/xcode_3.2.4_and_ios_sdk_4.1.dmg > /dev/null
un archivo llamado se crea cookies.txt
y contiene algo como esto:
developer.apple.com FALSE/FALSE 0 XXXXXXXXXXXXXXXX XXXXXXXXXXXX
developer.apple.com FALSE/FALSE 0 developer.sessionToken
No estoy completamente seguro, pero creo que debería haber más a eso que eso (específicamente, una cadena alfanumérica después de sessionToken
).
Cuando trato de hacer lo mismo con el enrollamiento de usar este:
curl \
-d "theAccountName=USERNAME&theAccountPW=PASSWORD" \
-c xcode-cookie \
-A "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.1) Gecko/20061204 Firefox/2.0.0.1" \
https://developer.apple.com/ios/download.action?path=/ios/ios_sdk_4.1__final/xcode_3.2.4_and_ios_sdk_4.1.dmg
consigo un archivo llamado xcode-cookie
que contiene la misma información que el wget cookies.txt
archivo me da, excepto que las líneas se invierten.
Intenté descargar el archivo .dmg.
Usando wget:
wget \
--cookies=on \
--load-cookies=cookies.txt \
--keep-session-cookies \
http://developer.apple.com/ios/download.action?path=/ios/ios_sdk_4.1__final/xcode_3.2.4_and_ios_sdk_4.1.dmg
Esto me da un archivo llamado login?appIdKey=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&path=%2F%2Fios%2Fdownload.action?path=%2Fios%2Fios_sdk_4.1__final%2Fxcode_3.2.4_and_ios_sdk_4.1.dmg
, que es sólo una página HTML que contiene el formulario de acceso para el sitio de desarrolladores.
El uso de rizo:
curl \
-b xcode-cookie \
-c xcode-cookie \
-O -v \
-A "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.1) Gecko/20061204 Firefox/2.0.0.1" \
https://developer.apple.com/ios/download.action?path=/ios/ios_sdk_4.1__final/xcode_3.2.4_and_ios_sdk_4.1.dmg
que imprime básicamente el mismo que wget (menos el HTML).
Quiero decir que tiene que ver con la sessionToken no está en la cookie, pero como dije antes no estoy seguro. Incluso traté de exportar las cookies desde mi navegador y siguiendo las instrucciones en la publicación de blog que he vinculado a continuación y en varios otros sitios que encontré mientras buscaba ayuda.
Debo estar haciendo algo mal, a menos que Apple haya cambiado algo desde el 10 de octubre de because this guy seems to be to do something right.
¡Gracias de antemano!
Gracias, petert! Me ahorra la molestia de hacerlo yo mismo. – Joe
Sí, funciona de maravilla: ahora es fácil configurarlo de la noche a la mañana, usando cron – petert