문제

여러 사이트에서 여러 다른 사이트에서 여러 페이지를 예약해야하며 특정 시간에 보통 한 번 밤에 실행해야합니다. 이 작업을 수행 할 소프트웨어가 있습니까? 페이지를 호출 한 다음 응답을 기록하고 호출 페이지가 성공했는지 여부를 기록하면 좋을 것입니다. 다른 상자에 Helm을 사용하고 있었고 멋진 웹 스케줄러 모듈이 있었지만 Helm 은이 컴퓨터의 옵션이 아닙니다. 이것은 Window Server 2008 상자입니다.

도움이 되었습니까?

해결책

우리는 VBS 파일을 호출하는 BAT 파일을 호출하는 표준 예약 작업을 사용합니다. 나는 그것이 가장 우아한 솔루션이 아니라는 것을 알고 있지만 지속적으로 작동합니다.

박쥐:

webrun.vbs http://website.com/page.aspx

VBS :

dim URL, oArgs  

Set oArgs = WScript.Arguments  

    if oArgs.Count = 0 then  
    msgbox("Error: Must supply URL")  
    wscript.quit 1  
    end if  

URL = oArgs(0)  

 on error resume next  
Set objXML = CreateObject("MSXML2.ServerXMLHTTP")  

    if err then  
    msgbox("Error: " & err.description)  
    wscript.quit 1  
    end if  

' Call the remote machine the request  
    objXML.open "GET", URL, False  

    objXML.send()  

' return the response  
    'msgbox objXML.responSetext  

' clean up  
    Set objXML = Nothing  

VBS 파일의 코드는 거의 확실하게 과도하게 과도하고 인수되었지만 기능적이지 않습니다.

다른 팁

어때 wget.exe 그리고 작업 스케줄러?

상단 예제에 주어진 코드는 웹 사이트로드하는 동안 작업이 활성화되는 문제가 있습니다. 웹 사이트는 2 분 동안로드되었지만 작업은 이미 1 초 안에 완료되므로 5 분마다 실행할 때 문제가 발생합니다. 웹 사이트가 10 분을로드하고 작업이 이미 1 초 안에 완료되면 웹 사이트의로드 시간을 기다리려면 다시 실행됩니다.

제가 한 일은 다음과 같습니다 (이 스크립트는 웹 사이트가로드되는 한 작업을 바쁘게 유지합니다).

dim URL, oArgs, objXML
Set oArgs = WScript.Arguments
URL = oArgs(0)

on error resume next

Set objXML = CreateObject("Microsoft.XMLDOM")
objXML.async = "false"
objXML.load(URL)
Set objXML = Nothing

같은 상자에서 예약해야 할 요구 사항이 없다면 Zoho의 사이트 24x7.

처음에는 웹 사이트를 모니터링하도록 설계되었지만 웹 사이트를 모니터링하고 예상 답변을 기록하고 비교하여 외부 사이트의 추가 보안으로 목적을 위해 사용할 수있는 옵션이 있습니다. 그러나 몇 가지 URL을 제외하고는 무료가 아닙니다.

그것들은 다른 유사한 제공자이지만이 주제에 대해 웹을 검색했을 때 꽤 좋아 보였습니다.

이 스크립트와 작업 스케줄러를 사용하여 간단하고 훌륭합니다.

Call LogEntry()
Sub LogEntry()

'Force the script to finish on an error.
On Error Resume Next

'Declare variables
Dim objRequest
Dim URLs
URLs = Wscript.Arguments(0)
Set objRequest = CreateObject("Microsoft.XMLHTTP")

'Open the HTTP request and pass the URL to the objRequest object
objRequest.open "POST", URLs, false

'Send the HTML Request
objRequest.Send

Set objRequest = Nothing
WScript.Quit

End Sub

그런 다음 인수로 실행하고 싶은 URL로 호출합니다.

비슷하지만 (아마도 더 강력하지만)입니다 netcat 그리고 그것 Windows 포트

참고 - WGET는 GNU 표준 라이센스이므로 대부분의 상업/독점 시스템에서 사용할 수 있는지 확실하지 않습니다.

나는 사용한다 http://scheduler.codeeffects.com. 매우 효과적이고 신뢰할 수 있으며 불만이 없습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top