2013-01-22 2 views
2

난 그냥 mechanize에 대한 몇 가지 정보에 대해 궁금하고 인터넷에서 아래의 코드를 발견 user_agent_aliasfollow_meta_refreshmechanize 자체가 브라우저 인 경우, 필요한 이유기계화 된 객체로 user_agent_alias가 필요한 이유는 무엇입니까?

require 'mechanize' 
require 'logger' 
agent = Mechanize.new 
agent.user_agent_alias = 'Windows IE 9' 
agent.follow_meta_refresh = true 
agent.log = Logger.new(STDOUT) 

어느 한 설명하시기 바랍니다 수 있습니까?

답변

4

Mechanize는 브라우저가 아닙니다. 그것은 사이트를 쉽게 탐색 할 수있는 충분한 방법을 제공하는 페이지 파서입니다. 그러나, 그것은 브라우저가 아닙니다.

user_agent_alias은 실행 중일 때 Mechanize의 서명을 설정하고 페이지 요청을합니다. 귀하의 예에서는 "IE 9"로 위장하여 사이트를 스푸핑하려하지만이 서명은 User-Agent 헤더를 스니핑하는 시스템을 속일 수 없습니다.

follow_meta_refresh 음, "refresh"매개 변수를 사용하여 "meta"태그를 검색해야합니다. 그것에 대해 알아내는 것은 쉬운 일이 아니며 이해할 수 있습니다. 아니면 그냥 read the documentation.