2011-08-31 3 views
1

자동으로 웹 페이지를 방문하는 스크립트가 필요합니다. 나는 이것을 만들었다 :Ruby 방문 웹 페이지

20.times do 
    open(websiteURL) do |file| 
    file.each{|line| puts line} 
    end 

    puts '--------------------' 
end 

실제로 웹 사이트 html 코드를 받지만 실제로 페이지를 방문한 것으로 보이지는 않는다. 나는 일하는 손님 카운터가있는 웹 사이트에서 그것을 테스트했지만 바뀌지 않았습니다.

루비에서 wabsite 자동 방문 스크립트를 만드는 쉬운 방법이 있습니까?

안녕

+0

클라이언트 스크립트와 서버간에 일종의 HTTP 캐시가있을 수 있습니까? –

+2

요청을하지만 자바 스크립트는 실행하지 않습니다. 카운터가 클라이언트 쪽이면 조회가 계산되지 않습니다. –

+0

고유 한 방문자를 등록하기 위해 다른 IP에 대해서만 계산하거나 다른 유사한 방식으로 계산하는 카운터가 있습니다. –

답변

3

가장 좋은 건 (루비에서 웹 응용 프로그램 테스트) Watir과를 사용하는 것입니다

그것은 대부분의 경우 모든 웹 페이지의 측면 실제로 브라우저를 구동합니다 (IE, 파이어 폭스 사용 firewatir, 또는 크롬과 상호 작용할 수

내가 생각하는 watir-webdriver 사용)

여기 http://watir.com/으로 가서 시도해보십시오.

+0

이것은 훌륭하게 작동합니다. 감사. – gisek

2

Mechanize 당신이 우아한 방법으로 웹 사이트와 상호 작용하는 데 도움 수 있습니다.

+0

그러면 JavaScript가 실행됩니까? – gisek

1

카운터는 자바 스크립트가 스크립트에 의해 트리거되지 않을 수 있습니다 구현 된 경우

1

당신의 제작자와 같은 실제 웹 브라우저처럼 동작 본격적인 웹 브라우저를 사용할 수 없다면 그냥 "방문 페이지"동작은있다 귀하의 페이지는 기대할 것으로 예상됩니다.

페이지에로드 된 자바 스크립트 파일의 코드로 서버에 AJAX 호출을 시작하거나 html 파일을 가져 오는 것만으로도 이미지를 다운로드 할 수 있습니다. 브라우저와 같은 완전한 스크립트를 만들고 싶다면 html에 포함 된 모든 이미지와 다른 파일을 가져와야합니다 (아마도 html을 먼저 파싱해야 할 것입니다). 필요하다면 javascript를 실행하십시오. 그러나 나는 실제로 계산 된 것을 찾아 내고 일을 단순하게하기 위해 시간을 할애 할 것입니다.

+0

스크립트를 직접 실행하면 효과적입니다. – gisek

관련 문제