완전히 다운로드하지 않고 두 이미지를 비교하십니까? 이전 버전과 비교하지

큰 이미지 파일 (+ 20MB)의 사본이 변경 될 때마다 다운로드하려고합니다. 그러나 매 X 초마다 다운로드하고 이전 버전과 비교하지 않고 이미지가 변경되었는지 어떻게 알 수 있습니까? 그렇지 않으면 대역폭을 많이 소비하고 느려질 것입니다.

사진을 완전히 다운로드하기 전에 크기를 결정하는 방법이 있습니까? 따라서 크기가 변경되면 이미지도 변경되었음을 의미합니다.

두 개의 이미지를 다운로드하지 않고 (또는 처음 몇 킬로바이트 만 다운로드하여) 비교할 수 있습니까? 즉, 이미지에 크기 정보 또는 해시 값이 포함되어 있습니까? 아니면 그런 것.



답변

Wget을 사용하면 서버 측 파일이 최신 일 때만 다운로드 할 수 있습니다.

       When running Wget with -N, with or without -r or -p, the decision
       as to whether or not to download a newer copy of a file depends on
       the local and remote timestamp and size of the file.  -nc may not
       be specified at the same time as -N.


답변

접근법 1 : 파일 서버가 디렉토리 액세스를 허용 할 수 있습니다. 상위 디렉토리 출력에 액세스 한 후 구문 분석하십시오. 예 : https://www.kernel.org/pub/site/

접근법 2 : 코드에서, 파일 크기 얻기 위해 “내용 길이”헤더 필드를 검색 할 수 있습니다 파일이 변경되었다는 지표를. 예 : https://stackoverflow.com/questions/2983073/how-to-know-the-size-of-a-file-before-downloading-it/12271781#12271781

방법 3 : 서버 관리자에게 다운로드 할 수있는 체크섬, 새 파일을 사용할 수 있다는 알림 또는 다른 형식의 셸 / 디렉토리 액세스를 제공하도록 요청하십시오.


답변