Что нового

Найти и вывести на экран часть html кода

kalpak44

Новичок
Сообщения
45
Репутация
1
Приветствую всех на данном форуме!
несколько дней думал как можно реализовать такое, создать бота который бы мог скачивать к примеру с файлобмеников автоматически(разумеется не сразу), известно что там есть капча, для этого просто чтобы вывелось на экран окно с кодом и формой для ввода, введя данные чтобы скрипт выполнял свою работу дальше. хотелось бы узнать возможно ли и если да, то хотяб совета с чего начинать.

думаю работать в IE, вначале вычитать весь html код страницы, затем если содержится тот самй код капчи (чтобы найти использовать StringRegExp() которой также не оч умею пользоватья и не знаю можно ли с ней находить участки строк от допустим <div style=.....> до </div> <a class='....>) добавить небольшой javascript, который бы сделал всплывающее окно, в котором бы было тот самый участок кода с капчой. вводим и оно качает. канеш философия полнейшая и не знаю реализуемали она, но если можно хотяб совета :( :(
 

inververs

AutoIT Гуру
Сообщения
2,135
Репутация
465
Это все реально. Вот рабочий вариант. Конечно это сырой кусок кода, в работе его лучше не использовать 8)
Код:
#include <ie.au3>

#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Form1", 615, 438, 192, 124)
GUICtrlCreateLabel("Подождите загрузки капчи и введите код в нижнее поле",420,8,200,50)
$Input1 = GUICtrlCreateInput("", 448, 120, 161, 21)
$Button1 = GUICtrlCreateButton("Продолжить", 448, 144, 75, 25)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
Local $oIE = _IECreateEmbedded()
GUICtrlCreateObj($oIE, 8, 8, 400, 409)
_IENavigate($oIE, "about:blank")
_IENavigate($oIE, "http://narod.ru/disk/45837416001.8fd77a6cb59b491941b24389015fcbd6/1.txt.html")

Sleep(4000)
$oForm=_IEGetObjById($oIE, "f-capchaform")
$oTextLogin = _IEFormElementGetObjByName($oForm, "rep")
$aimg=_IEImgGetCollection($oIE,1)


$oIE2 = _IECreateEmbedded()
GUICtrlCreateObj($oIE2, 420, 8, $aimg.width+10, $aimg.height+50)
_IENavigate($oIE2, "about:blank")
_IENavigate($oIE2, $aimg.src )

While 1
	$nMsg = GUIGetMsg()
	Switch $nMsg
		Case $GUI_EVENT_CLOSE
			Exit
		Case $Button1
			$scapcha=GUICtrlRead($Input1)
			If $scapcha Then
				_IEFormElementSetValue($oTextLogin,$scapcha)
				Sleep(1000)
				_IEFormSubmit($oForm,-1)
			Else

			EndIf

	EndSwitch
WEnd


Запускаешь, код подгружает сай, ждет немного, подгружает капчу в верхний правый угол, ты вводишь ее в поле ниже и нажимаешь продолжить :smile:
 
Автор
K

kalpak44

Новичок
Сообщения
45
Репутация
1
:beer: Пасиб огромное! :ok: темку мож закрыть. И чуть вопрос по теме для общего развития - можно ли вообше вывести отдельное окно с чатью кода из страницы, к примеру найти на сайте блог с рекламой от какой нить партнерки и сунуть ее в оболочку программы?
 
Верх