Версия AutoIt: 3.4.1
Описание:
Нужно написать скрипт для размещения объявления о продаже дома или квартиры.
Параметры (площадь, адрес и т. д.) не входные, т.е. просто указать какой-нибудь пример прямо в форме отправки. Желательно, чтобы при этом размещалась хотя бы одна тестовая фотография к объявлению. Самое главное - это размещенное объявление и фото, если оно поддерживается сайтом.
Сайты следующие:
[list type=decimal]
[*]rosrealt.ru
[*]kemerovo.stoboy.ru
[*]avito.ru
[*]mirkvartir.ru
[*]barahla.net
[*]kemdom.ru
[/list]
Примечания:
Библиотеку IE использовать не надо, т.е. все должно размещаться без помощи браузера.
Для примера вот написанное мною размещение на сайт realty.ngs42.ru, только там используются входные параметры.
Примерно таким же способом нужно написать скрипты для других сайтов.
Принимаю любые предложения! ;)
Описание:
Нужно написать скрипт для размещения объявления о продаже дома или квартиры.
Параметры (площадь, адрес и т. д.) не входные, т.е. просто указать какой-нибудь пример прямо в форме отправки. Желательно, чтобы при этом размещалась хотя бы одна тестовая фотография к объявлению. Самое главное - это размещенное объявление и фото, если оно поддерживается сайтом.
Сайты следующие:
[list type=decimal]
[*]rosrealt.ru
[*]kemerovo.stoboy.ru
[*]avito.ru
[*]mirkvartir.ru
[*]barahla.net
[*]kemdom.ru
[/list]
Примечания:
Библиотеку IE использовать не надо, т.е. все должно размещаться без помощи браузера.
Для примера вот написанное мною размещение на сайт realty.ngs42.ru, только там используются входные параметры.
Код:
;;;;;;;;;;;; АВТОРИЗАЦИЯ ;;;;;;;;;;;;;;;;;
$oHTTP = ObjCreate('WinHttp.WinHttpRequest.5.1')
$oHTTP.Open('GET', 'http://realty.ngs42.ru/cp/login?login='&$login&'&pass='&$pass&'&cp=1')
$oHTTP.Send()
$oHTTP.WaitForResponse
$cookie = $oHTTP.GetResponseHeader('Set-Cookie')
;;;;;;;;;;;; ЗАГРУЗКА ФАЙЛОВ ;;;;;;;;;;;;;;
$media = ''
Local $hFileOpen
Local $sFileRead
Local $sBoundary
Local $sData
Local $iDatasize
Local $sHeader
Local $sCommand
Local $socket
Local $sResive
Local $Rstext = ''
Local $sNameOfFileInForm = 'files'
Local $sPHP = '/record/upload/'
Local $sHost = 'cottage.ngs42.ru'
$media = '['
For $i = 1 To $last_pos - 1
$sFile = $temp_dir & 'R_'&$i&'.jpg'
$hFileOpen = FileOpen($sFile)
$sFileRead = FileRead($hFileOpen)
FileClose($hFileOpen)
$sBoundary = StringFormat('----WebKitFormBoundary%s%s%s', @MIN, @HOUR, @SEC)
$sData = '--' & $sBoundary & @CRLF & _
'Content-Disposition: form-data; name="' & $sNameOfFileInForm & '"; filename="' & StringRegExpReplace($sFile, '^.*\\', '') & '"' & @CRLF & @CRLF & _
$sFileRead & @CRLF & '--' & $sBoundary & '--' & @CRLF
$iDataSize = StringLen($sData)
$sHeader = 'POST http://' & $sHost & $sPHP & ' HTTP/1.1' & @CRLF & _
'Host: ' & $sHost & @CRLF & _
'Content-Type: multipart/form-data; boundary=' & $sBoundary & @CRLF & _
'Content-Length: ' & $iDataSize & @CRLF & @CRLF
$sCommand = $sHeader & $sData
TCPStartup()
$socket = TCPConnect(TCPNameToIP($sHost), 80)
TCPSend($socket, $sCommand)
$Rstext = ''
While 1
$sResive = TCPRecv($socket, 2000)
If StringLen($sResive) <> 0 Then
$Rstext &= $sResive & @CRLF
ExitLoop
EndIf
Sleep(50)
WEnd
$aRes = StringRegExp($Rstext, '(\"+[id]+\"+:+\"+[0-9]+\")', 3)
$aRes = StringSplit($aRes[0], ":")
$file_id = StringReplace ($aRes[2],"""","")
$media &= '{"comment":"","id":"' & $file_id & '","position":'& ($i-1) & '}'
If ($i < $last_pos - 1) Then
$media &= ','
EndIf
TCPShutdown()
Next
$media &= ']'
;;;;;;;;;;;;;;;;; ДОБАВЛЕНИЕ ОБЪЯВЛЕНИЯ ;;;;;;;;;;;;;;;;;;;;;;
$oHTTP.Open('POST', 'http://cottage.ngs42.ru/cp/records/sell/add/')
$FormData = 'action=1' & _
'&curr_category=2' & _ ; категория коттеджи дома
'&_realty_RecordsCategories_id=2' & _ ; тип сделки
'&intOption2=' & $p1 & _ ; id населенный пункт
'&intOption3=' & $p2 & _ ; район
'&intOption25=' & $p3_1 & _ ; id улицы
'&strOption25=' & $p3_2 & _ ; название улицы
'&intOption9=' & $p4 & _ ; этажность
'&intOption10=' & $p5 & _ ; материал
'&intOption11=' & $p6 & _ ; колличество комнат
'&intOption8=' & $p7 & _ ; площадь земельного участка, соток
'&intOption5=' & $p9 & _ ; общая площадь
'&intOption6=' & $p10 & _ ; жилая площадь
'&intOption7=' & $p11 & _ ; площадь кухни
'&intOption13=' & $p28 & _ ; тип санузла
'&intOption31=' & $p17 & _ ; тип отопления
'&intOption1=' & $p19 & _ ; цена
'&intOption18=' & $p20 & _ ; торг
'&intOption20=' & $p21 & _ ; обмен
'&intOption19=' & $p22 & _ ; чистая продажа
'&intOption21=' & $p25 & _ ; ипотека
'&intOption35=' & $p23 & _ ; внесен задаток
'&intOption34=' & $p24 & _ ; находится в залоге
'&intOption29=' & $p14 & _ ; электричество
'&intOption33=' & $p15 & _ ; водоснабжение
'&intOption30=' & $p16 & _ ; отопление
'&contactName=' & $p29 & _ ; контактное лицо
'&contactPhone[]=' & $p13 & _ ; контактный телефон
'&objectDescription=' & $comment & _ ; комментарий
'&media=' & $media & _ ; фотографии
'&objectHomeNumber=' & _ ; номер дома
'&charOption27=' & _ ; ориентир
'&intOption36=' & _ ; направление выезда
'&intOption4=507' & _ ; тип объекта (дом)
'&intOption12=' & _ ; планировка
'&intOption14=' & _ ; колличество балконов
'&intOption27=' & _ ; колличество лоджий
'&_isAgency=' & _ ; от частного лица или агентства
'&_isSendToAgencies=1' & _ ; отправить агентствам
'&contactOrganization=' & _ ; название организации
'&phoneDescription[]=' & _ ; примечание
'&contactAddress=' & _ ; адрес офиса
'&contactEmail=' & _ ; email
'&contactICQ=' & _ ; ICQ
'&check_rules=' & _ ; согласие с условиями
'&referer=http://realty.ngs42.ru/cp/' & _ ; реферер в header (hidden)
'&success=1' & _ ; success (hidden)
'&add_type=custom' ; add_type (hidden)
$oHTTP.SetRequestHeader('Content-Type', 'application/x-www-form-urlencoded')
$oHTTP.SetRequestHeader('Cookie', $cookie)
$oHTTP.Send($FormData)
$oHTTP.WaitForResponse
Принимаю любые предложения! ;)