wget의 여러 사용자 자격 증명

wget의 여러 사용자 자격 증명

를 사용하면 wget서로 다른 자격 증명을 사용하여 비밀번호로 보호된 여러 영역이 있는 웹 사이트를 미러링할 때 둘 이상의 사용자/비밀번호 쌍을 제공할 수 있습니까?

여러 보호 영역이 있는 전체 웹사이트를 미러링하고 싶습니다. 간단한 예로 다음 구조를 고려해보세요.

example.com/protected_area_1/ (user=alice, password=cat)
example.com/protected_area_2/ (user=bob, password=dog)

이제 를 사용할 때 및 wget --mirror example.com매개변수를 추가로 제공할 수 있지만 하나의 사용자/비밀번호 쌍만 제공하면 로 인해 두 보호 영역 중 하나를 다운로드할 수 없습니다 .--user--password401 Authorization Required

다음과 같은 작업을 수행할 수 있는 방법이 있나요 wget --user=alice --password=cat --user=bob --password=dog (...)? 자연어로:비밀번호로 보호된 영역이 나타나면 제공된 모든 자격 증명을 차례로 시도하여 액세스 권한을 얻으십시오.

답변1

이 작업을 수행해야 하는 경우 wget:

  1. 사용자 이름/비밀번호 조합 수가 적고 다운로드가 과도하지 않은 경우 각 콤보( --user및 사용 --password)로 전체 트리를 반복적으로 실행하고 결과를 결합할 수 있습니다.

  2. 다른 사용자/비밀번호 조합이 도메인에 따라 달라지는 경우 wget의 옵션 --ask-password및 을 시도 expect하고 적시에 올바른 옵션을 제공할 수 있습니다.

좀 더 복잡한 다운로드 상황의 경우 나는 항상 전용 셀레늄 기반 프로그램을 사용했는데, 이는 wget이 처리할 수 있는 기본 인증보다 자바스크립트 및 기타 로그인 체계를 사용하여 페이지의 일부를 로드하는 현재 관행을 정확하게 처리합니다.

관련 정보