wget 또는 기타 도구를 사용하여 숨겨진 링크가 있는 파일을 다운로드하는 방법(클릭 시에만 활성화됨)

wget 또는 기타 도구를 사용하여 숨겨진 링크가 있는 파일을 다운로드하는 방법(클릭 시에만 활성화됨)

일부 자막 파일을 다운로드하여 rar 파일로 저장하고 싶습니다.http://subs.sab.bz/이 웹사이트는 새 릴리스에 대한 RSS 피드를 제공합니다. 안타깝게도 제공된 링크를 클릭하면 다운로드 페이지가 열리지만 파일을 가져올 수는 없습니다.

다운로드 페이지 중간에 버튼이 있습니다. 버튼을 클릭하면 필요한 rar 파일이 다운로드됩니다. 어쨌든 링크를 마우스 오른쪽 버튼으로 클릭하고 복사한 다음 열려고 하면 브라우저가 다운로드 페이지 자체를 열지만 파일을 다운로드하지는 않습니다. wget 및 컬에서 파일의 다운로드 링크를 사용하려고 하면 PHP 파일이 다운로드됩니다. 이 경우 서버 측 스크립트가 클라이언트 시스템에 올바른 링크를 전달하는 데 사용된다는 것을 읽었습니다.

그래서 저는 wget이 이 링크에 대한 onclick 동작을 시뮬레이션하도록 강제하는 방법을 찾고 있습니다. 나는 다운로드 링크에 대한 추가 속성을 찾을 수 있을 만큼 HTML CSS와 자바스크립트에 대해 충분히 알고 있습니다.

괜찮나요?

추신. 이 질문이 왜 반대표를 받았는지 혼란 스럽습니다. 좋은 설명이 있습니까? 제가 게시 규칙을 위반하고 있습니까? 감사합니다.

답변1

당신은 혼란스러운 일입니다. "Onclick" 작업은 JavaScript를 참조하며 클라이언트측 작업입니다. 이러한 링크의 JavaScript 후크가 URL을 구문 분석하는 방법을 확인해야 합니다. 그러나 여기서는 onclick 작업이 수행되지 않습니다.

이 웹사이트가 하는 일은추천인 확인, 또한 ~으로 알려진"핫링크 보호". 브라우저는 기본적으로 이전 페이지의 URL인 리퍼러 값을 보냅니다. 이는 다른 웹사이트가 파일에 대한 직접 링크를 게시하여 웹사이트의 대역폭을 훔치는 것을 방지하기 위해 수행됩니다.

링크를 복사하여 브라우저에 직접 붙여넣으려고 하면 질문에 설명된 것과 동일한 동작이 발생하게 됩니다. 왜냐하면 브라우저는 리퍼러 정보를 보내는 방법을 모르기 때문입니다.

wget에게 리퍼러 값을 가짜로 지시하는 옵션은 컬에 대한 --referer것 입니다. -e이 값은 일반적으로 웹 사이트의 루트로 설정하는 것이 안전합니다. 웹 사이트에서는 일반적으로 값이 올바른지 확인하지 않습니다.저것철저한:

wget -O output.rar --referer http://subs.sab.bz/ 'http://subs.sab.bz/your-link-here'

관련 정보