Format cookie saat menggunakan wget?

31

Apa format Netscape dari wget's cookies.txt? Saya perlu mirror situs web yang membutuhkan login. Saya menggunakan ekstensi Chrome yang mengembalikan cookie dalam format itu, saya menyimpannya cookies.txt, impor dengan wgetperintah tetapi tidak digunakan, itu hanya mengunduh konten seperti saya tidak masuk sama sekali.

Saya menghargai bantuan apa pun.

Zarko Djuric
sumber

Jawaban:

46

Formatnya adalah format Netscape sebagaimana dinyatakan dalam halaman manual dan format ini adalah:

Tata letak file cookies.txt Netscape sedemikian rupa sehingga setiap baris berisi satu pasangan nilai-nama. Contoh file cookies.txt mungkin memiliki entri yang terlihat seperti ini:

.netscape.com TRUE / FALSE 946684799 NETSCAPE_ID 100103

Setiap baris mewakili sepotong informasi yang disimpan. Sebuah tab disisipkan antara masing-masing bidang.

Dari kiri ke kanan, inilah yang diwakili oleh masing-masing bidang:

domain - Domain yang dibuat DAN yang bisa membaca variabel.

flag - Nilai TRUE / FALSE yang menunjukkan apakah semua mesin dalam domain yang diberikan dapat mengakses variabel. Nilai ini diatur secara otomatis oleh browser, tergantung pada nilai yang Anda tetapkan untuk domain.

jalur - Jalur dalam domain tempat variabel itu valid.

secure - Nilai TRUE / FALSE yang menunjukkan apakah koneksi aman dengan domain diperlukan untuk mengakses variabel.

kedaluwarsa - Waktu UNIX tempat variabel akan kedaluwarsa. Waktu UNIX didefinisikan sebagai jumlah detik sejak 1 Januari 1970 00:00:00 GMT.

name - Nama variabel.

value - Nilai variabel.

(Dari " FAQ Cookie Tidak Resmi ", diedit untuk kejelasan)

ETL
sumber
3
Apakah file Tab atau Space terpisah?
Ferrybig
3
@ferrybig Tab digunakan.
tokek
sesuatu yang istimewa adalah kuki berasal dari misalnya 127.0.0.1 bukannya sesuatu dengan nama domain?
PypeBros
4

Salah satu cara untuk mendapatkan cookie untuk wget adalah dengan menggunakan opsi --ke-session-cookies dari wget.

Sebagai contoh :

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

The ?__login etctergantung pada situs web Anda mencoba untuk cermin, Anda mungkin harus melihat cara kerja bentuk otentikasi.

Maka Anda dapat menggunakan:

wget --mirror --load-cookies cookies.txt http://MYSITE/
Arthur Lutz
sumber
3
ini tidak menjawab pertanyaan tentang apa format file
Michael
2

Format file cookie Netscape untuk setiap baris data adalah seperti di atas, tetapi Anda tidak akan dapat membacanya HTTP::Cookies::Netscapekecuali jika memiliki baris header seperti ini, yang memerlukan format file lengkap:

# Netscape HTTP Cookie File

atau ini:

# HTTP Cookie File
Phil Goetz
sumber