AutoIt: 3.3.6.1
Версия: 1.0
Категория: Администрирование, Автоматизация, Вспомогательные функции, Интернет, Сеть.
Описание:
Несколько месяцев назад я написал http://autoit-script.ru/index.php/topic,9594.0.html и я решил собрать все необходимое для нормальной работы с POST и GET запросы....
Основные характеристики
1. Отправка POST запрос
2. Отправка POST запрос с файл
3. Тип файла, расположенного на сервере
4. Размер файла расположенного на сервере
5. Дата последней модификации файлов, расположенного на сервере
6. Содержание веб-сайта
7. Отправка GET запрос
8. Скачать файл из Интернета
9. Двоичных код расположенного на сервере файл
Внутри скрипта можно найти примеры ее использования.
Извините, если я пишу неправильно, но я иностранец. Все описания на болгарском языке.
Код/Пример:
Файл: HTTPx.zip
История версий:
Источник: secrets-bg.com
Автор(ы): secrets-bg.com
Версия: 1.0
Категория: Администрирование, Автоматизация, Вспомогательные функции, Интернет, Сеть.
Описание:
Несколько месяцев назад я написал http://autoit-script.ru/index.php/topic,9594.0.html и я решил собрать все необходимое для нормальной работы с POST и GET запросы....
Основные характеристики
1. Отправка POST запрос
2. Отправка POST запрос с файл
3. Тип файла, расположенного на сервере
4. Размер файла расположенного на сервере
5. Дата последней модификации файлов, расположенного на сервере
6. Содержание веб-сайта
7. Отправка GET запрос
8. Скачать файл из Интернета
9. Двоичных код расположенного на сервере файл
Внутри скрипта можно найти примеры ее использования.
Извините, если я пишу неправильно, но я иностранец. Все описания на болгарском языке.
Код/Пример:
Код:
#cs ----------------------------------------------------------------------------
HTTPx Version: 1.0
AutoIt Version: 3.3.6.1
Author: http://secrets-bg.com
Script Function:
Template AutoIt script.
HTTPx е библиотека съдържаща функции за POST и GET заявки.
Secrets-bg.com разработи скрипт на Autoit съдържащ основни функции за работа със сайт посредствум POST и GET заявки.
Основни функции
1. Изпращане на POST заявка
2. Изпращане на POST заявка с файл
3. Тип на файла намиращ се на сървър
4. Големина на файла намиращ се на сървър
5. Дата на последна модификация на файла намиращ се на сървър
6. Съдържание на интернет страница
7. Изпращане на GET заявка
8. Сваляне на файл от интернет
9. Бинари код на файл от интернет
В самия скрипт можете да намерите примери за работа с него.
#ce ----------------------------------------------------------------------------
Global $sUserAgent = "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)"
;_UserAgent("UserAgent") ;При промяна на User Agent преди всяка команда добавете този ред с посочен от вас User Agent
Func _UserAgent($_UserAgent)
$sUserAgent = $_UserAgent
EndFunc
#comments-start
<?php
$name1 = $_POST['name1'];
echo $name1;
$name2 = $_POST['name2'];
echo $name2;
?>
#comments-end
;MsgBox(64, "Info", _SendPost("http://HOST/post.php", "name1=TeSt1&name2=TeSt2")) ;Изпраща пост заявка
Func _SendPost($aHost = "", $aPost = "")
WinHttp()
$oHTTP.Open("POST", $aHost, false)
$oHTTP.SetRequestHeader("User-Agent", $sUserAgent)
$oHTTP.SetRequestHeader("Content-Type", "application/x-www-form-urlencoded")
$oHTTP.Send($aPost)
Return $oHTTP.ResponseText
$oErrorHandler = 0 ;изключваме обработката на грешки
EndFunc
#comments-start
<?php
//Получаване на параметри
$name1 = $_POST['name1'];
echo $name1;
//Получаване на параметри
$name2 = $_POST['name2'];
echo $name2;
//Получаваме името на файла от пост заявката
$fileName = $_POST['filename'];
//Получаваме бинари кода на файла чрез пост заявка
$binaryData = $_POST['data'];
//Създава се файл с посоченото име от пост заявката
$fh = fopen("./$fileName.x", 'a+b');
//Записва се в файла получения бинари код на файла
fwrite($fh, pack("H*" , $binaryData));
//Затваря се файла
fclose($fh);
echo "1";
?>
#comments-end
;MsgBox(64, "Info", _SendFile("http://HOST/postdata.php", @ScriptDir & "\FILE.png", "name1=TeSt1&name2=TeSt2")) ;Изпраща пост заявка с файл
Func _SendFile($aHost = "", $file = "", $aPost = "")
$hfile = FileOpen($file, 16)
$sFileTypeName = StringRegExpReplace($file, "^.*\\", "")
While 1
$data = FileRead($hfile, 500000)
If @error Then ExitLoop
$Data2 = StringTrimLeft($data,2)
$aData = $aPost & "&filename=" & $sFileTypeName & "&data=" & $Data2
WinHttp()
$oHTTP.Open("POST", $aHost, false)
$oHTTP.SetRequestHeader("User-Agent", $sUserAgent)
$oHTTP.SetRequestHeader("Content-Type", "application/x-www-form-urlencoded")
$oHTTP.Send($aData)
If $hfile = -1 Then
Else
If $oHTTP.ResponseText = "" Then
For $i = 5 to 1 Step -1
$oHTTP.Send($aData)
If $oHTTP.ResponseText = "" Then
Else
ExitLoop
EndIf
PingG($aHost)
Next
EndIf
EndIf
WEnd
FileClose($hfile)
If $hfile = -1 Then
Return ""
Else
Return $oHTTP.ResponseText
EndIf
$oErrorHandler = 0 ;изключваме обработката на грешки
EndFunc
;MsgBox(64, "Info", _GetFileTipeSizeDate("http://www.google.com/intl/en_ALL/images/logo.gif", 0)) ;Тип на файла
;MsgBox(64, "Info", _GetFileTipeSizeDate("http://www.google.com/intl/en_ALL/images/logo.gif", 1)) ;Големина на файла
;MsgBox(64, "Info", _GetFileTipeSizeDate("http://www.google.com/intl/en_ALL/images/logo.gif", 2)) ;Дата на последна модефикация на файл
Func _GetFileTipeSizeDate($sURL, $SizeTipeDate = "")
WinHttp()
$oHTTP.open("HEAD", $sURL, false)
$oHTTP.SetRequestHeader("User-Agent", $sUserAgent)
$oHTTP.Send()
If $oHTTP.Status = 200 Then
If $SizeTipeDate = 0 Then
Return $oHTTP.GetResponseHeader("Content-Type")
EndIf
If $SizeTipeDate = 1 Then
Return Round($oHTTP.GetResponseHeader("Content-Length")/1024/1024, 2)
EndIf
If $SizeTipeDate = 2 Then
Return $oHTTP.GetResponseHeader("LAST-MODIFIED")
EndIf
Else
Return -1
EndIf
$oErrorHandler = 0 ;изключваме обработката на грешки
EndFunc
#comments-start
<?php
$name1 = $_GET['name1'];
echo $name1;
$name2 = $_GET['name2'];
echo $name2;
?>
#comments-end
;MsgBox(64, "Info", _Get("http://www.google.bg/", "", 0)) ;Съдържание на страница
;MsgBox(64, "Info", _Get("http://HOST/get.php?name1=TeSt1&name2=TeSt2", "", 0)) ;Get заявка с данни
;_Get("http://www.google.com/intl/en_ALL/images/logo.gif", @ScriptDir & "\google.gif", 1) ;Сваляне на файл
;MsgBox(64, "Info", _Get("http://www.google.com/intl/en_ALL/images/logo.gif", "", 2)) ;Бинари код на файл
Func _Get($sURL, $sFilename, $DowRead = "")
WinHttp()
$oHTTP.Open("GET", $sURL, false)
$oHTTP.SetRequestHeader("User-Agent", $sUserAgent)
$oHTTP.Send()
If $DowRead = 0 Then
Return $oHTTP.ResponseText
EndIf
If $DowRead = 1 Then
$File = FileOpen($sFilename, 2)
FileWrite($File, $oHttp.ResponseBody)
FileClose($File)
EndIf
If $DowRead = 2 Then
Return $oHTTP.ResponseBody
EndIf
$oErrorHandler = 0 ;изключваме обработката на грешки
EndFunc
Func WinHttp()
Global $oErrorHandler = ObjEvent('AutoIt.Error', 'ErrorFunc') ;Създаваме обработчик на грешки (COM Error Handling http://www.autoitscript.com/autoit3/docs/intro/ComRef.htm)
Global $oHTTP = ObjCreate('WinHttp.WinHttpRequest.5.1') ;Създава се COM-обект
Dim $Time
If @error Then
;MsgBox(16, 'Грешка', 'Грешка при създаване на обекта "WinHttp.WinHttpRequest.5.1".')
Sleep(100)
$Time += 1
If $Time = 5 Then
Exit 1
EndIf
WinHttp()
EndIf
EndFunc
Func ErrorFunc()
;MsgBox(16, 'Грешка', $oErrorHandler.description)
;Exit 2
EndFunc
Func PingG($Host)
$var = Ping(StringRegExpReplace($Host,".+?//(.+?)/.+","$1"),1000)
If $var Then
Else
Sleep(1000)
PingG($Host)
EndIf
EndFunc
Файл: HTTPx.zip
История версий:
1.0
Источник: secrets-bg.com
Автор(ы): secrets-bg.com