Кибор » Кибор - Интегрированная среда разработки ботов » О программе Кибор » Версия 5.43 Работа с HTTPS протоколом

Страниц (6): « 1 2 3 [4] 5 6 »
 

31. Dantes3000 - 24 Октября, 2019 - 04:47:33 - перейти к сообщению
Можно как-то получить значение tgme_widget_message_views (это количество просмотров поста) на этой странице?(для просмотра ссылки Вам необходимо авторизоваться)
проблема в том, что это, скорее всего, выводится js, а js может запустить только браузер. Может есть еще какие-то пути? Можно на python, можно на кибор
32. Zireael - 24 Октября, 2019 - 04:58:34 - перейти к сообщению
[quote]на этой странице?(для просмотра ссылки Вам необходимо авторизоваться) /quote]
Что-то она не открывается.
33. Dantes3000 - 24 Октября, 2019 - 08:27:42 - перейти к сообщению
 Zireael пишет:
Что-то она не открывается.


Это ж Телеграм) надо с VPN
34. testphp - 27 Января, 2020 - 15:33:45 - перейти к сообщению
 Kibor пишет:
Подробнее о WinInet

Авторизация на https сайте путем отправки POST запроса в Кибор
<iframe width="560" height="315" src="https://www.youtube.com/embed/w1stPNZHq9Y" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>


CODE:
#define NULL 0
#define FALSE 0
#define INTERNET_OPEN_TYPE_PRECONFIG 0
#define INTERNET_DEFAULT_HTTPS_PORT 443
#define INTERNET_SERVICE_HTTP 3
#define INTERNET_FLAG_SECURE 8388608
#define INTERNET_FLAG_NO_CACHE_WRITE 67108864


external(INT, "InternetOpen", "InternetOpenA", "Wininet.dll");
external(INT, "InternetConnect", "InternetConnectA", "Wininet.dll");
external(INT, "HttpOpenRequest", "HttpOpenRequestA", "Wininet.dll");
external(INT, "HttpSendRequest", "HttpSendRequestA", "Wininet.dll");
external(INT, "InternetReadFile", "InternetReadFile", "Wininet.dll");
external(INT, "InternetCloseHandle", "InternetCloseHandle", "Wininet.dll");


int hInternet = InternetOpen(
"My bot",
INTERNET_OPEN_TYPE_PRECONFIG,
NULL,NULL,
0);

if (hInternet != NULL) // открываем HTTP сессию
{

int hConnect = InternetConnect(
hInternet,
"kibor-bot.com",
INTERNET_DEFAULT_HTTPS_PORT,
NULL,NULL,
INTERNET_SERVICE_HTTP,
0,
1);

if (hConnect != NULL)
{
int hRequest = HttpOpenRequest(
hConnect,
"POST",
"forum/loginout.php",
NULL,
NULL,
0,
INTERNET_FLAG_SECURE | INTERNET_FLAG_NO_CACHE_WRITE,
1);


if (hRequest != NULL) // посылаем запрос
{

string Header="Content-Type: application/x-www-form-urlencoded";
//Test_Kibor Это логин
//Test_Kibor_qwert Это пароль
string POSTData="action=login&imembername=Test_Kibor&ipassword=Test_Kibor_qwert&submit=%C2%F5%EE%E4";

int bSend = HttpSendRequest(hRequest,
Header,
size(Header),
POSTData,
size(POSTData));


string fr="";
char szData[1024];
int dwBytesRead;

wwwww1:;

int bRead = InternetReadFile(
hRequest,
address(#szData[0]),
sizearray(szData)-1,
address(#dwBytesRead));

fr=fr+format(#szData[0]);

if (bRead == FALSE || dwBytesRead == 0) goto Fs;

goto wwwww1;

Fs:;

messagebox (fr);

if (fopen ("c:\5.txt", "w")!=0)
{//если открылся
fwrite(fr);
fclose();//закрываем файл
}
start("c:\5.txt");

}

InternetCloseHandle(hRequest);// закрываем запрос
}

InternetCloseHandle(hConnect);// закрываем сессию
}

InternetCloseHandle(hInternet);// закрываем WinInet

почему выдает много букв Н? код копирую идентично - одни буквы Н. меняю данные на свой сервер - тоже самое
35. Adomb - 20 Февраля, 2020 - 11:19:50 - перейти к сообщению
Тоже выдаёт одни H.
А sendgetweb почему-то у некоторых на компах стабильно -1 и хоть убейся.
36. Zireael - 20 Февраля, 2020 - 17:01:53 - перейти к сообщению
 Цитата:
Тоже выдаёт одни H.

Все функции что-то возвращают. При ошибке обычно 0.
 Цитата:
int bSend = HttpSendRequest(...
messagebox(bSend);

Ищите какая функция не работает как надо, потом уже разбираться почему она не работает.

 Цитата:
InternetCloseHandle(hRequest);// закрываем запрос
}
InternetCloseHandle(hConnect);// закрываем сессию
}
InternetCloseHandle(hInternet);// закрываем WinInet

Нет смысла закрывать то, что не открылось. Лучше так:
CODE:
InternetCloseHandle(hRequest);// закрываем запрос
}
InternetCloseHandle(hConnect);// закрываем сессию
}
InternetCloseHandle(hInternet);// закрываем WinInet
}
37. Kibor - 03 Июня, 2020 - 12:43:54 - перейти к сообщению
Доработка sendgetweb

Длинная позволяет формировать заголовок, POST запрос и длину POST запроса.

Примеры длинной

CODE:
string Header="Content-Type: application/x-www-form-urlencoded";

char POSTData[1000];
strcpy(#POSTData[0], "action=login&imembername=Test_Kibor&ipassword=Test_Kibor_qwert&submit=%C2%F5%EE%E4");//Пост запрос


char C[100000];
if (sendgetweb(#C[0], "My bot", "POST", "https:/^/kibor-bot.com", "forum/loginout.php", Header, #POSTData[0], size(#POSTData[0]))>0)
{
messagebox (format(#C[0]));

if (fopen ("c:\5.txt", "w")!=0)
{//если открылся
fwrite(format(#C[0]));
fclose();//закрываем файл
}
start("c:\5.txt");
}
38. Kibor - 06 Июля, 2020 - 09:30:13 - перейти к сообщению
Доработка sendgetweb
Добавлена возможность использовать прокси.
Прокси указывается не обязательным первым параметром string

Зайти на форум kibor-bot.com через прокси сервер IP 88.199.21.76 порт 80
На kibor-bot.com будет IP прокси сервера 88.199.21.76
 Цитата:
sendgetweb("88.199.21.76:80", #T[2], "", "GET", "https:/^/kibor-bot.com", "forum")


Не использовать прокси
 Цитата:
sendgetweb(#T[2], "", "GET", "https:/^/kibor-bot.com", "forum")



Так же само с длинным вариантом sendgetweb

Зайти и авторизоваться через прокси
 Цитата:
sendgetweb("88.199.21.76:80", #C[0], "My bot", "POST", "https:/^/kibor-bot.com", "forum/loginout.php", Header, #POSTData[0], size(#POSTData[0]))


Зайти под своим IP
CODE:
sendgetweb(#C[0], "My bot", "POST", "https:/^/kibor-bot.com", "forum/loginout.php", Header, #POSTData[0], size(#POSTData[0]))
39. Kibor - 07 Июля, 2020 - 14:18:44 - перейти к сообщению
Простой скрипт, который парсит сайт с списком бесплатных прокси, составляет из них массив и проверяет их на работоспособность.
Позволяет легко автоматически найти рабочий бесплатный прокси не заходя ни на какие сайты вручную и не проверяя список прокси руками.

В случае нахождения рабочего прокси выдает страницу(для просмотра ссылки Вам необходимо авторизоваться) на которую скрипт заходит через это прокси и выдает IP и порт для дальнейшего использования бесплатного прокси по назначению.

CODE:
int pos_size_edit0[1][4];
string text_edit0[1];

pos_size_edit0[0][0]=10; pos_size_edit0[0][1]=9; pos_size_edit0[0][2]=221; pos_size_edit0[0][3]=20;
text_edit0[0]="Парсинг прокси...";

createdialog(0, EDIT, #pos_size_edit0[0][0], #text_edit0[0]);
showdialog(0, "Поиск прокси", 200, 200, 250, 70, 1, 1);
//////////



find_proxi();

loop()sleep(10);

function find_proxi()
{
string P[100];
string R="(?<=input type=^"checkbox^" class=^"ch^" value=^")[\d]+(\.)[\d]+(\.)[\d]+(\.)[\d]+(:)[\d]+(?=^" onclick=^"SelectProxy\(this\)^")";
int pade=1;
string T;
S:;
if (sendgetweb(#T, "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:78.0) Gecko/20100101 Firefox/78.0", "GET", "http:/^/foxtools.ru", "Proxy?page="+format(pade)))
{
text_edit0[0]="Парсинг прокси...";

int k=regexsearch(100, #P[0], T, R);
if (k==0)
{
messagebox ("Прокси нет");
return;
}
for (int n=0; n<k; n++)
{
text_edit0[0]=P[n];

if (sendgetweb(P[n], #T, "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:78.0) Gecko/20100101 Firefox/78.0", "GET", "https:/^/kibor-bot.com", "forum"))
{
if (T!="")
{
if (fopen (tempfolder()+"proxi.txt", "w")!=0)
{//если открылся
fwrite("Рабочий прокси "+P[n]+"^r^n"+T);
fclose();//закрываем файл
}
start(tempfolder()+"proxi.txt");
if (messageboxyn("Прокси найден.^r^nДа - Закончить поиск^r^nНет - Продолжить поиск")==1)return;
}
}
}
}
pade++;
goto S;
}


Видео работы.
40. Adomb - 15 Июля, 2020 - 08:49:08 - перейти к сообщению
Если обратиться к сайту который выключен, допустим, зависает на 15 секунд, прежде чем вернёт отрицательны ответ. opensocket тоже долго виснет. Можно ли какой параметр сделать чтобы по быстрому "понимал", что от сайта ответа не будет? Или как реализовать проверку можно ещё?

Powered by ExBB FM 1.0 Final