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


1

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

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

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


서버를 제어 할 수 있습니까?
lzam

아뇨. 나는 단지 방문자입니다.
16:38에

더 나은 솔루션을 위해 무언가를 해결할 수있는 도움이 필요하면 서버 소유자에게 문의하십시오. 어쨌든이 작업을 수행해야하므로 대역폭을 낭비하지 않고 동일한 콘텐츠를 반복해서 제공합니다.
Ramhound

1
파일 크기를 비교하는 것은 이미지 데이터가 변경되었는지를 결정하는 정확한 방법이 아닙니다. 이미지에는 변경된 메타 데이터가있을 수 있지만 이미지 자체는 변경되지 않았습니다.
Keltari

어떤 대답이 도움이 되었습니까? 하나를 솔루션으로 설정 하시겠습니까?
davidbaumann

답변:


1

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.

도움이 되셨습니까? 솔루션으로 표시하십시오.
davidbaumann

1

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


1
Etag는 어떻습니까?
lzam
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.