wget을 사용할 때 쿠키 형식?


31

의 넷스케이프 형식 무엇 wget의는 cookies.txt? 로그인이 필요한 웹 사이트를 미러링해야합니다. 쿠키를 해당 형식으로 반환하는 Chrome 확장 프로그램을 사용하고 쿠키를 저장하고 명령을 사용하여 cookies.txt가져 wget오지만 아무 것도 사용하지 않으면 전혀 로그인하지 않은 것처럼 콘텐츠를 다운로드합니다.

도움을 주셔서 감사합니다.

답변:


46

형식은 매뉴얼 페이지에 명시된 Netscape 형식이며이 형식은 다음과 같습니다.

Netscape의 cookies.txt 파일의 레이아웃은 각 줄에 하나의 이름-값 쌍이 포함되도록하는 것입니다. 예제 cookies.txt 파일에는 다음과 같은 항목이있을 수 있습니다.

.netscape.com TRUE / FALSE 946684799 NETSCAPE_ID 100103

각 줄은 하나의 저장된 정보를 나타냅니다. 탭은 각각의 필드 사이에 삽입된다.

왼쪽에서 오른쪽으로 각 필드가 나타내는 것은 다음과 같습니다.

domain- 변수를 읽을 수 있고 작성한 변수입니다.

플래그 - 진정한 / 주어진 도메인 내의 모든 시스템 변수에 액세스 할 수 있는지를 나타내는 FALSE 값. 이 값은 도메인에 설정 한 값에 따라 브라우저에서 자동으로 설정됩니다.

path- 변수가 유효한 도메인 내 경로입니다.

고정 - 참 / 도메인과 보안 연결 변수를 액세스하기 위해 필요한 경우에는 FALSE 값을 나타낸다.

만기 -변수가 만료되는 UNIX 시간. UNIX 시간은 1970 년 1 월 1 일 00:00:00 GMT 이후의 초 수로 정의됩니다.

name- 변수의 이름

value- 변수의 값

( " 비공식 쿠키 FAQ " "에서 명확성을 위해 편집 됨)


3
파일 탭 또는 공간이 분리되어 있습니까?
Ferrybig

3
@ferrybig 탭이 사용됩니다.
geckon

특별한 것은 쿠키가 도메인 이름이 아닌 127.0.0.1에서 나온 것입니까?
PypeBros

4

wget 용 쿠키를 얻는 한 가지 방법은 wget의 --keep-session-cookies 옵션을 사용하는 것입니다.

예를 들면 다음과 같습니다.

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

그만큼 ?__login etc 당신이 거울로하려는 웹 사이트에 따라, 당신은 어떻게 인증 양식의 작품을보고해야 할 수도 있습니다.

그런 다음 사용할 수 있습니다 :

wget --mirror --load-cookies cookies.txt http://MYSITE/

3
이것은 파일 형식이 무엇인지에 대한 질문에 대답하지 않습니다
Michael

2

각 데이터 라인의 Netscape 쿠키 파일 형식은 위와 같지만 다음 HTTP::Cookies::Netscape과 같은 헤더 행이 없으면 전체 파일 형식에 필요한 파일 을 읽을 수 없습니다 .

# Netscape HTTP Cookie File

아니면 이거:

# HTTP Cookie File
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.