Formato dos cookies ao usar o wget?

25

Qual é o formato do Netscape de wget ' cookies.txt ? Eu preciso espelhar um site que requer login. Eu uso uma extensão do Chrome que retorna cookies nesse formato, eu os salvei em cookies.txt , importo com o comando wget , mas sem uso, ele apenas baixa o conteúdo como se eu não estivesse logado.

Agradeço qualquer ajuda.

    
por Zarko Djuric 16.04.2012 / 14:19

3 respostas

34

O formato é o formato Netscape, conforme indicado na página man e esse formato é:

The layout of Netscape's cookies.txt file is such that each line contains one name-value pair. An example cookies.txt file may have an entry that looks like this:

.netscape.com TRUE / FALSE 946684799 NETSCAPE_ID 100103

Each line represents a single piece of stored information. A tab is inserted between each of the fields.

From left-to-right, here is what each field represents:

domain - The domain that created AND that can read the variable.

flag - A TRUE/FALSE value indicating if all machines within a given domain can access the variable. This value is set automatically by the browser, depending on the value you set for domain.

path - The path within the domain that the variable is valid for.

secure - A TRUE/FALSE value indicating if a secure connection with the domain is needed to access the variable.

expiration - The UNIX time that the variable will expire on. UNIX time is defined as the number of seconds since Jan 1, 1970 00:00:00 GMT.

name - The name of the variable.

value - The value of the variable.

(De " O FAQ não oficial do cookie ", editado para maior clareza)

    
por 17.06.2015 / 16:03
3

Uma forma de obter cookies para o wget é usar as opções --keep-session-cookies do wget.

Por exemplo:

wget --keep-session-cookies --save-cookies cookies.txt "http://MYSITE/?__login=USER&__password=PASS"

O ?__login etc depende do site que você está tentando espelhar, talvez seja necessário observar como o formulário de autenticação funciona.

Então você pode usar:

wget --mirror --load-cookies cookies.txt http://MYSITE/
    
por 16.04.2012 / 16:12
2

O formato de arquivo de cookies do Netscape para cada linha de dados é como acima, mas você não poderá lê-lo com HTTP::Cookies::Netscape a menos que tenha uma linha de cabeçalho como essa, que o formato de arquivo completo requer:

# Netscape HTTP Cookie File

ou isto:

# HTTP Cookie File
    
por 02.04.2016 / 16:10

Tags