расписание веб-страницы - PullRequest
       13

расписание веб-страницы

1 голос
/ 03 ноября 2008

Мне нужно запланировать запуск нескольких разных страниц на нескольких разных сайтах в определенное время, обычно раз в ночь. Есть ли какое-либо программное обеспечение для этого? было бы хорошо, если бы он вызвал страницу, а затем записал ответ и был ли вызванный запуск страницы успешным или нет. Я использовал Helm на другом компьютере, и у него был хороший модуль Web Scheduler, но Helm не подходит для этой машины. Это окно Window Server 2008.

Ответы [ 8 ]

6 голосов
/ 03 ноября 2008

Мы используем стандартные запланированные задачи, которые вызывают файл bat, который вызывает файл 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 почти наверняка является как избыточным, так и перезаписанным, но, тем не менее, функциональным.

3 голосов
/ 03 ноября 2008

Как насчет wget.exe и планировщика задач?

1 голос
/ 24 июня 2011

Код, приведенный в верхнем примере, имеет некоторые проблемы с активностью задачи во время загрузки сайта. Веб-сайт загружается за 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
0 голосов
/ 15 февраля 2010

пользуюсь http://scheduler.codeeffects.com. Очень эффективно и надежно, жалоб нет.

0 голосов
/ 24 марта 2009

fyi - wget является стандартной лицензией GNU, поэтому я не уверен, что она пригодна для большинства коммерческих / проприетарных систем.

0 голосов
/ 06 ноября 2008

Похожим (хотя, возможно, более мощным) является netcat и его порт Windows

0 голосов
/ 06 ноября 2008

Я закончил тем, что использовал этот скрипт и планировщик задач, простой и прекрасно работает:

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-адресом, который я хочу использовать в качестве аргумента:

0 голосов
/ 03 ноября 2008

Если нет необходимости планировать их из одного окна, загляните на сайт Zoho24x7 .

Изначально он предназначен для мониторинга веб-сайтов, но имеет возможность записывать ожидаемые ответы и сравнивать их, чтобы вы могли использовать его для своих целей с дополнительной безопасностью внешнего сайта. Это не бесплатно, за исключением нескольких URL.

Это другие похожие провайдеры, но в прошлый раз, когда я искал в Интернете эту тему, они выглядели довольно неплохо.

...