|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » Как получить картинку методом Get запросов |
|
Как получить картинку методом Get запросов
|
Пользователь Сообщения: 61 |
Профиль | Отправить PM | Цитировать Объясните кто знает как получить картинку методом отправки Get запросов, InetGet - не интересует. Сам пробовал не получается. Вот что настрадалось на текущий момент:
#include <HTTP.au3> $sHost2 = "ya.ru" $sPage="/" ;~ msgbox (0,"привет",_HTTPGetHeader($sHost2)) Func _HTTPGetHeader($sHost) TCPStartup() Local $sName_To_IP = TCPNameToIP($sHost) Local $iSocket = TCPConnect($sName_To_IP, 80) If $iSocket = -1 Then TCPCloseSocket($iSocket) Return SetError(1, 0, "") EndIf Local $sCommand = "GET /logo.png HTTP/1.0" & @CRLF $sCommand &= "Host: " & $sHost2 & @CRLF & @CRLF ConsoleWrite ($sCommand) Local $BytesSent = TCPSend($iSocket, $sCommand) If $BytesSent = 0 Then Return SetError(2, @error, 0) Local $sRecv = "", $sCurrentRecv While 1 $sCurrentRecv = TCPRecv($iSocket, 16) If @error <> 0 Then ExitLoop If $sCurrentRecv <> "" Then $sRecv &= $sCurrentRecv WEnd ConsoleWrite ($sRecv) TCPCloseSocket($iSocket) TCPShutdown() Return $sRecv EndFunc ;~ ****1 метод****** $Sock=_HTTPConnect($sHost2) ConsoleWrite(_HTTPGet($sHost2,"logo.png") & @CR) $aRes=_HTTPRead($Sock,0) ConsoleWrite($aRes & @CR & "***********************" & @CR) _HTTPClose() ;~ ****2 метод****** _HTTPGetHeader($sHost2) Библиотека HTTP.au3 - http://forum.oszone.net/thread-154449.html |
|
Отправлено: 15:36, 28-10-2009 |
Пользователь Сообщения: 61
|
Профиль | Отправить PM | Цитировать Попробовал уменьшит параметр в функции TCPRecv($iSocket, 16) с 16 до 1 появился заголовок %PNG но все равно встречается мусор типа - 0x000x000x00
|
Отправлено: 13:34, 30-10-2009 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Старожил Сообщения: 307
|
Профиль | Отправить PM | Цитировать Цитата malev:
$sCurrentRecv = TCPRecv($iSocket, 1) If @error <> 0 Then ExitLoop If $sCurrentRecv <> "" Then If $sCurrentRecv ="0x00" Then $sRecv &= "1_2_3_4_5" ; заменяем, чтоб можно было тогда найти в бинарном виде, именно это. Else $sRecv &= $sCurrentRecv EndIf |
|
------- Отправлено: 00:41, 31-10-2009 | #3 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
как передать (не принять!) методом POST данные на др. сервер | VART | Вебмастеру | 11 | 25-11-2010 12:54 | |
Прочие БД - Подскажите как в ADODB вывести список запросов. | Igor_I | Программирование и базы данных | 2 | 04-12-2009 20:47 | |
Как растенуть картинку | alleclf | Вебмастеру | 2 | 21-06-2008 19:46 | |
[решено] Как отучить OpenOffice от сетевых запросов при запуске? | Coutty | Программное обеспечение Linux и FreeBSD | 2 | 16-04-2008 10:03 | |
Как сжать картинку? | Sherla | Хочу все знать | 9 | 18-06-2003 10:54 |
|