2013-01-21 2 views
1

나는 Mechanize 문서를 열람했다. 아래는 .pdf에 대한 것입니다.Mechanize를 사용하여 .docx 및 .xlsx, .txt 확장자로 파일을 다운로드 할 수 있습니까?

require 'mechanize' 

agent = Mechanize.new 
agent.pluggable_parser.pdf = Mechanize::FileSaver 
agent.get 'http://example.com/foo.pdf' 
  1. 그러나 나는 또한 또한, .XLSX, .txt 파일을 .DOCX 다운로드 할 수 있습니까?
  2. 파일 다운로드가 완료되면 기본 디렉토리는 무엇입니까? 저장 파일 디렉토리도 변경할 수 있습니까?
  3. 다운로드 중에 어떤 브라우저를 선택하겠습니까? 브라우저 컨트롤을 변경할 수 있습니까?

답변

1
  1. 파일의 종류는 중요하지 않습니다

    ; 네트워크를 통해 액세스 할 수있는 파일은 Mechanize를 통해 얻을 수 있습니다.이 파일은 Mechanize와의 상호 작용을 자동화하는 도구입니다.

  2. 파일은 프로그램이 실행 된 디렉토리에 저장됩니다. 파일을 다운로드 할 위치를 지정하려면 Mechanize::FileSaver 대신 Mechanize::Download을 사용하십시오. 여기에 예제 코드 : https://stackoverflow.com/a/9105153/429758 (파일 이름에 전체 경로 지정)

  3. 기계화는 다운로드하는 동안 브라우저를 사용하지 않습니다. For all intents and purposes, Mechanize acts like a web browser with no user interfacehttp://ruby.about.com/od/tasks/a/The-Mechanize-2-0-Handbook.htm를 통해

는 기계화를 사용하는 방법에 대한 자세한 예제들은 EXAMPLES page on mechanize documentation을 체크 아웃 마십시오.

+0

잘함 제안을 - 어떻게 문서를 사용하는 방법? 나는 이것에 관해서 이야기하고있다, 나는 그런 종류의 문서를 처음으로 보았다. 기본적으로 Oracle 도메인입니다. 의사가 겪고있는 기본적인 문제는 모든 절차에 구문을 설명하는 작은 코드가있는 것은 아닙니다. 그래서 숙제를하는 법, 어떤 프로 시저가 코드 내부에서 어떻게 사용될 수 있는지 이해하는 것. 의사는 모든 절차가 아닌 절차가 적은 작은 코드가 있습니다. 그것에 관한 어떤 suggetions. 나는이 플랫폼을 정말로 알고 싶어하지만 문서화는 어느 정도 도움이된다. 언젠가는 그렇지 않다. – DoLoveSky

+1

루비/레일스의 어떤 주제에 대해서, 내가하는 첫번째 일은 그것에'RailsCast' 에피소드가 있는지 확인하는 것입니다. 다음은 기계화를위한 것입니다 : http://railscasts.com/episodes/191-mechanize 그건 좋은 소개를 제공합니다; 그 후에 공식 문서를 이해하는 것이 더 쉬울 것입니다. –

+0

오케이! 이 질문은 주관하지 않습니다. 여전히 당신에게 묻고 싶습니다. - 당신은 인도 출신입니까? 나는 인도 콜카타 출신이다. – DoLoveSky

2

그냥과 같이 파일을 저장하는 것이 더 간단 수 있습니다 : 당신이 나에게 좋아하는에 대한 줄 것이다

File.open('myfname.pdf', 'wb'){|f| f << agent.get('http://example.com/foo.pdf').body} 
+0

제안을 주셔서 감사합니다. 동일한 내용을 확인하겠습니다. – DoLoveSky