2013-08-27 10 views

risposta

515

Utilizzare la bandiera posizione di testa:

curl -L <URL>

+1

Questo non funziona con l'autenticazione con Google per accedere ai fogli di calcolo, sia. :/ – fatuhoku

+7

'man curl':" Quando viene utilizzata l'autenticazione, arricciatura invia solo le proprie credenziali all'host iniziale: <...> Vedere anche --location-trusted su come modificare questo. " – hudolejev

+11

@posit bit.ly sta controllando lo user agent, ma puoi spoofarlo con il flag '--user-agent' o' -A' –

18

Ho avuto un problema simile. Sto postando la mia soluzione qui perché credo che potrebbe aiutare uno dei commentatori.

Per me, l'ostacolo era che la pagina richiedeva un accesso e quindi mi ha fornito un nuovo URL tramite javascript. Ecco quello che ho dovuto fare:

curl -c cookiejar -g -O -J -L -F "j_username=yourusename" -F "j_password=yourpassword" <URL>

noti che j_username e j_password è il nome dei campi per modulo di login del mio sito web. Dovrai aprire l'origine della pagina web per vedere quali sono il "nome" del campo del nome utente e il "nome" del campo della password nel tuo caso. Dopo di che vado in un file html con lo script java in cui è stato incorporato il nuovo URL. Dopo l'analisi di questo fuori solo a reinviare con il nuovo URL:

curl -c cookiejar -g -O -J -L -F "j_username=yourusename" -F "j_password=yourpassword" <NEWURL>