를 사용하여 wget
서로 다른 자격 증명을 사용하여 비밀번호로 보호된 여러 영역이 있는 웹 사이트를 미러링할 때 여러 사용자/비밀번호 쌍을 제공할 수 있습니까?
여러 보호 영역이 있는 전체 웹사이트를 미러링하고 싶습니다. 간단한 예로 다음 구조를 고려해보세요.
example.com/protected_area_1/ (user=alice, password=cat)
example.com/protected_area_2/ (user=bob, password=dog)
이제 를 사용할 때 매개변수 및 를 wget --mirror example.com
추가로 제공할 수 있지만 , 사용자/비밀번호 쌍만 제공하는 경우 다음으로 인해 두 보호 영역 중 하나를 다운로드할 수 없습니다.--user
--password
401 Authorization Required
비슷한 일을 할 수 있는 방법이 있나요 wget --user=alice --password=cat --user=bob --password=dog (...)
? 자연어로:비밀번호로 보호된 영역을 발견하면 순차적으로 제공되는 모든 자격 증명을 시도하여 액세스를 시도하세요.
답변1
이 작업을 수행해야 하는 경우 wget
:
사용자 이름/비밀번호 조합 수가 적고 다운로드 크기가 크지 않은 경우 각 조합에 대해 전체 트리를 반복적으로 실행하고(
--user
및 사용--password
) 결과를 병합할 수 있습니다.도메인에 따라 사용자/비밀번호 조합이 다른 경우
wget
옵션을 시도해--ask-password
보고expect
적시에 올바른 옵션을 사용할 수 있습니다.
더 복잡한 다운로드 상황의 경우, 저는 항상 wget이 처리할 수 있는 기본 인증 이외의 페이지 일부 및 기타 로그인 시나리오를 로드하기 위해 자바스크립트를 사용하는 현재 관행을 올바르게 처리하는 전용 셀레늄 기반 프로그램을 사용합니다.