전체 웹 사이트에서 외부 링크 인 을 처리하고 싶습니다. 링크가 외부인지 확인하고 건너 뛸 수있는 쉬운 방법이 있습니까?외부의 모든 링크를 처리합니다 (루비 + 기계화)
내 코드는 지금까지내가 (0.9.3) 및 루비 1.8.6 (2008-08-11 패치 레벨 기계화를 사용하고 (사이트 URL이 명령 행 인수 통과)처럼 보이는
287) [I386-MSWIN32]
더 호스트/도메인이 없도록 웹 사이트가 상대 경로를 사용할 수 있습니다 그리고 그것은 더 복잡
require 'mechanize'
def process_page(page)
puts
puts page.title
STDIN.gets
page.links.each do |link|
process_page($agent.get(link.href))
end
end
$agent = WWW::Mechanize.new
$agent.user_agent = 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-GB; rv:1.9.1.4) Gecko/20091016 Firefox/3.5.4'
process_page($agent.get(ARGV[0]))
아주 좋은 대답입니다. 고마워요. – Radek
감사합니다. 그것은 내가 생각한 * 방식으로 일하는 무리를 벽에 붙잡아 두지 만 오히려 나빠지는 데서 오는 것입니다. 모든 상황을 다룰 수 있다고 보장 할 수는 없지만 URI를 사용하면 예기치 않은 문제가 많이 발생하지 않습니다. :-) –