Что нового

Проверка существования папки в интернете

Aleksander-2000

Новичок
Сообщения
33
Репутация
0
Версия AutoIt: 3.3.14.0

Описание: Здравствуйте! Как проверить существование папки на компьютере знаю, подскажите, пожалуйста, как проверить существование папки в интернете по URL-адресу.
 

Garrett

Модератор
Локальный модератор
Сообщения
3,999
Репутация
964
Aleksander-2000 [?]
существование папки в интернете по URL-адресу
Работа с WEB подразумевает работу с заголовками. Смотрите код HTTP ошибки в заголовках.
HTTP Error 404 - File or directory not found
 
Автор
Aleksander-2000

Aleksander-2000

Новичок
Сообщения
33
Репутация
0
Не получается, при отсутствии страницы показывается не страница 404, а обычная страница с несуществующей папкой в URL-адресе, с указанием "Страница не найдена"
 

Garrett

Модератор
Локальный модератор
Сообщения
3,999
Репутация
964
Aleksander-2000 [?]
Сложно?! Проще сказать не получится.
Код:
Local $sUrl    = "http://xn--80abn5aat1f.pw/463211524300/"
Local $sUserAgent = 'Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_7; en-US) AppleWebKit/534.16 (KHTML, like Gecko) Chrome/10.0.648.205 Safari/534.16'

Local $oHTTP = ObjCreate('WinHttp.WinHttpRequest.5.1')
$oHTTP.Open("GET", $sUrl, true)
$oHTTP.SetRequestHeader("User-Agent", $sUserAgent)
$oHTTP.Send()
$oHTTP.WaitForResponse()
$oHTTP.Send()
$oHTTP.WaitForResponse()

ConsoleWrite(StringFormat('! Response: (code - %d) mesage: %s\n', $oHTTP.status, $oHTTP.statusText))



Добавлено:
Сообщение автоматически объединено:

Видимо, вы не читали.
Garrett [?]
Работа с WEB подразумевает работу с заголовками. Смотрите код HTTP ошибки в заголовках. HTTP Error 404 - File or directory not found
 
Автор
Aleksander-2000

Aleksander-2000

Новичок
Сообщения
33
Репутация
0
Пока знаний не хватает, чтобы все это понять. UserAgent, а как можно без него, и с выводом сообщения папка доступна, или не доступна.
 

inververs

AutoIT Гуру
Сообщения
2,135
Репутация
465
Код:
Local $url = 'http://xn--80abn5aat1f.pw/463211524300/'
Local $http = ObjCreate('WinHttp.WinHttpRequest.5.1')
$http.Open("HEAD", $url)
$http.Send()
If $http.Status = 404 Then
    Exit MsgBox(0, '', 'Ресурс не существует')
EndIf
 

Garrett

Модератор
Локальный модератор
Сообщения
3,999
Репутация
964
Aleksander-2000 [?]
UserAgent, а как можно без него
Он будет в любом случае! Это стандарт. Однако если вы не укажите заголовок UserAgent, то системой будет использоваться заголовок UserAgent по умолчанию. Как нетрудно догадаться это будет Internet Explorer (IE11 - Mozilla/5.0 (Windows NT 6.3; Trident/7.0; rv:11.0) like Gecko)


Добавлено:
Сообщение автоматически объединено:

Aleksander-2000 [?]
Пока знаний не хватает, чтобы все это понять.
Method Definitions
WinHttpRequest object
 
Автор
Aleksander-2000

Aleksander-2000

Новичок
Сообщения
33
Репутация
0
Приношу извинения за долгий ответ, была срочная командировка. Всем спасибо, тема решена.
 
Верх