2009-03-12 7 views
0

지금 원격 서버의 파일에서 헤더 데이터를 읽어야하는 프로젝트에서 작업 중입니다. 나는 많은 파일과 큰 파일에 대해 이야기하고 있으므로 전체 파일을 읽을 수는 없지만 필요한 헤더 데이터 만 읽을 수 있습니다.원격 서버의 파일에서 헤더 데이터 읽기

내가 가지고있는 유일한 해결책은 퓨즈를 사용하여 원격 서버를 마운트 한 다음 파일에서 로컬 컴퓨터에있는 것처럼 헤더를 읽는 것입니다. 나는 그것을 시도하고 그것을 작동합니다. 그러나 그것은 몇 가지 단점이 있습니다. FTP의 경우 특별히 :

  • FTP는 curlftpfs를 사용하는 SSH와 비교하여 속도가 느립니다. 같은 서버에서 SSH 90 파일은 18 초 만에 읽혔습니다. 39 초 만에 10 개의 FTP 파일이 있습니다.
  • 신뢰할 수 없습니다. 때때로 마운트 포인트가 마운트 해제되지 않습니다.
  • 서버가 활성 상태이고 수동 장착이 수행 된 경우. 마운트 지점과 상위 폴더는 약 3 분 후에 잠 깁니다.
  • 데이터 전송이 진행될 때에도 시간 초과가 발생합니다 (FTP 프로토콜 및 curlftpfs가 아님).

퓨즈는 해결책이지만, 나는 그것을 믿을 수 있다고 느끼지 않기 때문에 해결책을 찾지 못한다. 그래서 내 문제는 기본적으로 문제에 대한 다른 해결책이있는 경우입니다. 언어는 Ruby가 좋지만 Ruby가 솔루션을 지원하지 않는다면 다른 언어도 사용할 수 있습니다.

감사합니다.

답변

1

어떤 유형의 정보를 원하십니까?

루비의 open-uri 모듈을 사용해 볼 수 있습니다. 다음 예는 http://www.ruby-doc.org/stdlib/libdoc/open-uri/rdoc/index.html

require 'open-uri' 
open("http://www.ruby-lang.org/en") {|f| 
    p f.base_uri   # <URI::HTTP:0x40e6ef2 URL:http://www.ruby-lang.org/en/> 
    p f.content_type  # "text/html" 
    p f.charset   # "iso-8859-1" 
    p f.content_encoding # [] 
    p f.last_modified # Thu Dec 05 02:45:02 UTC 2002 
} 

편집에서이다 : 영업 이익은 원격 파일의 ID3 태그 정보를 검색하고 싶어 것으로 보인다. 이것은 더 복잡합니다.

위키에서 : 이것은 어려운 문제인 것으로 보입니다.

위키에

:

만 ID3v2.4 표준 파일 내에서

태그 위치는 는 공통점, 에서 파일의 끝을 태그 데이터를 배치 할 수있다 ID3v1. ID3v2.2와 2.3은 태그 데이터 앞에 있어야합니다. 스트리밍 데이터의 경우 은 필수적으로 이며 정적 데이터의 경우 전체 오디오 파일은 이어야 파일의 앞에 앞에 데이터를 삽입해야합니다. 초기 태깅의 경우이 은 모든 파일 을 다시 작성해야하므로 큰 불이익을받습니다. 태그 작가가 을 재 작성으로 전체 오디오 파일을 필요로 없이 태그 데이터에 편집을 허용하기 위해 후 태그 데이터를 패딩을 소개하도록 권장하지만, 이러한 표준 없습니다되어 및 태그 요구 사항이 다를 수 있습니다 특히 APIC (관련 사진)이 임베디드 인 경우 특히 크게 입니다.

즉, 파일의 ID3 태그 버전에 따라 파일의 다른 부분을 읽어야 할 수도 있습니다. 여기

는 ID3tagv1.1 위해 루비를 사용하지만, ID3 태그 읽기의 기초를 설명 기사입니다해야 좋은 출발점으로 서버 : http://rubyquiz.com/quiz136.html

당신은 또한 ID3 구문 분석 라이브러리를 사용으로 볼 수 있었다, 같은 id3.rb이나 id3lib-ruby; 그러나 둘 중 하나가 원격 파일을 구문 분석하는 기능을 지원하는지 확신 할 수 없습니다.

+0

음악 파일의 태그 정보에 액세스하고 싶습니다. 예를 들어 ID3. Open-uri는 저에게 그런 정보를 줄 수 없을 것 같습니다. – rejeep

+0

자세한 내용은 편집을 참조하십시오. :) – nan