Что нового

[Автоматизация] Помогите написать бот для facebook

steopcik

Новичок
Сообщения
2
Репутация
0
Я только начинаю изучать язык но хочу создать бота для facebook
а именно для мобильной версии, на ней просто не нужно вводить капчу
я начал с создания гуи в виде браузера но застрял на попытке сделать авто вход на сайт
так вот для решения проблемы нужно:
1. решить проблему авто входа на сайт
2. создать механизм связанный с кнопкой который в авто режиме добавляет в друзья найденного пользователя
  • принцип добавления:
  • используя ссылку "http://m.facebook.com/profile.php?re31cb1b9&id=" где после &id= добавляет ид из файла со списком ид
  • кнопки Add as friend и нажатие на ней
  • получения подтверждения повторяет процесс до окончания списка
вот начальный код
Код:
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include <IE.au3>

$IE =  _IECreateEmbedded ()

#Region ### START Koda GUI section ### Form=C:\Documents and Settings\step\Рабочий стол\Fcebook Mobile Boot.kxf
$GUI_Main = GUICreate("Facebook Mobile Boot", 401, 601, -1, -1)
GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
$Button1 = GUICtrlCreateButton("Start Mass Frends Add", 0, 0, 400, 80, $WS_GROUP)
$browser = GUICtrlCreateObj ($IE, 0, 120, 400, 500)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###



_IENavigate ($IE,"http://m.facebook.com/")
While 1
	$nMsg = GUIGetMsg()
	Switch $nMsg
		Case $GUI_EVENT_CLOSE
			Exit

		Case $GUI_Main
		Case $GUI_Main
		Case $GUI_Main
		Case $GUI_Main
	EndSwitch
WEnd
 

El Panda

Продвинутый
Сообщения
101
Репутация
59
Re: [Автоматизация] Помогите написать боот для faceboor

как делать через IE, обсуждалось не раз. ищи.
 
Автор
S

steopcik

Новичок
Сообщения
2
Репутация
0
Re: [Автоматизация] Помогите написать боот для faceboor

пытаюсь использовать этот вариант на у формы авторизации нет названия и не знаю как исправить ситуацию
:
Код:
$oIE = _IECreate ("http://m.facebook.com")

$o_form = _IEFormGetObjByName ($oIE, "")

$o_login = _IEFormElementGetObjByName ($o_form, "email")
$o_pass = _IEFormElementGetObjByName ($o_form, "pass")
$o_signin = _IEFormElementGetObjByName ($o_form, "login")

$username = "user"
$password = "pass"

_IEFormElementSetValue ($o_login, $username)
_IEFormElementSetValue ($o_pass, $password)

_IEAction ($o_signin, "click")


после запуска следующее сообщения из лога
;
Код:
>"C:\Program Files\AutoIt3\SciTE\AutoIt3Wrapper\AutoIt3Wrapper.exe" /run /prod /ErrorStdOut /in "C:\Program Files\AutoIt3\Examples\Helpfile\zxcvb.au3" /autoit3dir "C:\Program Files\AutoIt3" /UserParams    
+>19:37:23 Starting AutoIt3Wrapper v.2.0.0.3    Environment(Language:0419  Keyboard:00000409  OS:WIN_XP/Service Pack 3  CPU:X86 OS:X86)
>Running AU3Check (1.54.19.0)  from:C:\Program Files\AutoIt3
+>19:37:23 AU3Check ended.rc:0
>Running:(3.3.2.0):C:\Program Files\AutoIt3\autoit3.exe "C:\Program Files\AutoIt3\Examples\Helpfile\zxcvb.au3"    
--> IE.au3 V2.4-0 Warning from function _IEFormGetObjByName, $_IEStatus_NoMatch
--> IE.au3 V2.4-0 Error from function _IEFormElementGetObjByName, $_IEStatus_InvalidDataType
--> IE.au3 V2.4-0 Error from function _IEFormElementGetObjByName, $_IEStatus_InvalidDataType
--> IE.au3 V2.4-0 Error from function _IEFormElementGetObjByName, $_IEStatus_InvalidDataType
--> IE.au3 V2.4-0 Error from function _IEFormElementSetValue, $_IEStatus_InvalidDataType
--> IE.au3 V2.4-0 Error from function _IEFormElementSetValue, $_IEStatus_InvalidDataType
--> IE.au3 V2.4-0 Error from function _IEAction, $_IEStatus_InvalidDataType
+>19:37:29 AutoIT3.exe ended.rc:0
+>19:37:30 AutoIt3Wrapper Finished
>Exit code: 0    Time: 7.384

потом надо внедрить вы сам скрипт на как обойти
Код:
$oIE = _IECreate ("http://m.facebook.com")
 

Garrett

Модератор
Локальный модератор
Сообщения
3 999
Репутация
964
steopcik сказал(а):
пытаюсь использовать этот вариант на у формы авторизации нет названия и не знаю как исправить ситуацию
Вот держи:
Код:
#include <IE.au3>

$IE = _IECreate ("http://m.facebook.com")
_IELoadWait($IE)
; Выбор локали (лишним не будет)
$Form = _IEFormGetCollection ($IE, 1)
$locale = _IEFormElementGetCollection ($Form, 1)
_IEFormElementSetValue ($locale, "ru_RU")
; Заполняем поля для входа
$Form = _IEFormGetCollection ($IE, 0)
$login = _IEFormElementGetCollection ($Form, 0)
$pass = _IEFormElementGetCollection ($Form, 1)
_IEFormElementSetValue ($login, "[email protected]")
_IEFormElementSetValue ($pass, "password")
; Поехали...
_IEFormSubmit ($Form)
 
Верх