Знающим C# код

hvg84

Client
Регистрация
06.11.2017
Сообщения
61
Благодарностей
8
Баллы
8
Всем привет, кто подскажет как переделать чекер конекта. Есть вот такой код
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading;
using System.IO;
using System.Text.RegularExpressions;
using ZennoLab.CommandCenter;
using ZennoLab.InterfacesLibrary;
using ZennoLab.InterfacesLibrary.ProjectModel;
using ZennoLab.InterfacesLibrary.ProjectModel.Collections;
using ZennoLab.InterfacesLibrary.ProjectModel.Enums;
using ZennoLab.Macros;
using Global.ZennoExtensions;
using ZennoLab.Emulation;

namespace ZennoLab.OwnCode
{
class CheckProxy
{
public void Checked(string MyProxy, bool w8-)
{
for(int i = 0; i <= 4; i++)
{
string httpResponse = null;
if (w8 == true) i = 0;
httpResponse = ZennoPoster.HttpGet("http://fest-trubachev.ru/check_proxy.html", MyProxy, "UTF-8", ZennoLab.InterfacesLibrary.Enums.Http.ResponceType.BodyOnly, 3000, "", "Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.99 Safari/537.36", true, 5);
if (i >= 3) throw new Exception("Не работает прокси: " + MyProxy);
if (httpResponse != "ok") Thread.Sleep(1500);
if (httpResponse == "ok")break;
}
}
}
}
Как сделать так что бы он проверял здесь ип https://check.zennolab.com ..если ип есть, идет далее ..если ипа нету (скорее всего не будет конекта или попадет на обрыв при смени ип) ожидаем (TRUE)..сейчас так почти и есть.. но обращение идет к этому файлу http://fest-trubachev.ru/check_proxy.html .. если получил ok значит есть конект. Кто знает как переделать?
 

Mikhail B.

Moderator
Регистрация
23.12.2014
Сообщения
14 328
Благодарностей
5 431
Баллы
113
Ну так поменяй, в чем проблема?))

Я бы здесь паузу увеличил на по больше
if (httpResponse != "ok") Thread.Sleep(1500);
меняем на
if (httpResponse != "ok") Thread.Sleep(10000);

И количество попыток маловато как по мне
for(int i = 0; i <= 4; i++)
меняем на
for(int i = 0; i <= 30; i++)
 

hvg84

Client
Регистрация
06.11.2017
Сообщения
61
Благодарностей
8
Баллы
8

Mikhail B.

Moderator
Регистрация
23.12.2014
Сообщения
14 328
Благодарностей
5 431
Баллы
113
код должен понимать что есть ип ..как менять? Если не знаете не трольте тему.
Я не троллю. Вы проверяете на разрыв интеренета. Соответсвенно если прокси отключены, то и не будет ответа от сайта. Вы сами ответили на свой вопрос.

скорее всего не будет конекта или попадет на обрыв при смени ип
Вот я и говорю, меняйте просто сайт и смотрите что будет.
 

Phoenix78

Client
Read only
Регистрация
06.11.2018
Сообщения
11 790
Благодарностей
5 691
Баллы
113
код должен понимать что есть ип ..как менять? Если не знаете не трольте тему.
аахаха... это ты модератору так смело заявил ? (facepalm)

смотри какая тема есть у него https://zennolab.com/discussion/threads/proksi-vzjat-iz-spiska-cheknut-naznachit-polozhit-v-konec-spiska-gotovyj-snippet-proxy-s-v-2.46784/

думаешь не знающий человек смог бы сделать такой снипет ?

я вот его снипетом пользуюсь во всех проектах :ca:
 

hvg84

Client
Регистрация
06.11.2017
Сообщения
61
Благодарностей
8
Баллы
8
Я не троллю. Вы проверяете на разрыв интеренета. Соответсвенно если прокси отключены, то и не будет ответа от сайта. Вы сами ответили на свой вопрос.


Вот я и говорю, меняйте просто сайт и смотрите что будет.
Толку если просто сменить сайт? Код, статус ok получает из заранее подготовленного файла http://fest-trubachev.ru/check_proxy.html
 

hvg84

Client
Регистрация
06.11.2017
Сообщения
61
Благодарностей
8
Баллы
8
аахаха... это ты модератору так смело заявил ? (facepalm)

смотри какая тема есть у него https://zennolab.com/discussion/threads/proksi-vzjat-iz-spiska-cheknut-naznachit-polozhit-v-konec-spiska-gotovyj-snippet-proxy-s-v-2.46784/

думаешь не знающий человек смог бы сделать такой снипет ?

я вот его снипетом пользуюсь во всех проектах :ca:
Рад за тебя
 

Mikhail B.

Moderator
Регистрация
23.12.2014
Сообщения
14 328
Благодарностей
5 431
Баллы
113

Mikhail B.

Moderator
Регистрация
23.12.2014
Сообщения
14 328
Благодарностей
5 431
Баллы
113
  • Спасибо
Реакции: Phoenix78

hvg84

Client
Регистрация
06.11.2017
Сообщения
61
Благодарностей
8
Баллы
8
Файл, не файл. Какая разница, если инета нет. то не будет никакого ок, будет ошибка. Если конечно нету ошибке в вашем коде.
Это не мой код, нашел здесь на форуме, сайт просто менял он вечно ждет конект
 

Вложения

Mikhail B.

Moderator
Регистрация
23.12.2014
Сообщения
14 328
Благодарностей
5 431
Баллы
113
Это не мой код, нашел здесь на форуме, сайт просто менял он вечно ждет конект
Можете подождать пока кто-то поможет, или если есть спешка, то можете попробовать найти исполнителя в рекламном разделе https://zennolab.com/discussion/forums/poisk-i-predlozhenie-uslug-po-sozdaniju-shablonov.213/
 
  • Спасибо
Реакции: hvg84

Phoenix78

Client
Read only
Регистрация
06.11.2018
Сообщения
11 790
Благодарностей
5 691
Баллы
113
httpResponse обрабатываешь регуляркой поиска ip адреса.
если найдет что то то гуд, не найдет, значит не гуд.
 

Mikhail B.

Moderator
Регистрация
23.12.2014
Сообщения
14 328
Благодарностей
5 431
Баллы
113
httpResponse обрабатываешь регуляркой поиска ip адреса.
если найдет что то то гуд, не найдет, значит не гуд.
У него код не в кубике. Надо там знать как правильно его вписывать.
 

Phoenix78

Client
Read only
Регистрация
06.11.2018
Сообщения
11 790
Благодарностей
5 691
Баллы
113
У него код не в кубике. Надо там знать как правильно его вписывать.
ну разбираться нет времени.
вот из заметок накидаю заготовок, из них можно собрать нужные действия

// обработка текста, через Regex. Получение первого результата.
string data_text = "текст"; // текст для обработки
string data_regx = @"регулярка";// регулярка
var regexGroups = Macros.TextProcessing.Regex(data_text, data_regx, "0"); string result = "";
if (regexGroups.Count > 0) result = regexGroups[0].FirstOrDefault();

регулярка для поиска ip (http.{0,4}|socks.{0,4}){0,1}\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}:\d{1,5} ну или переделать под выдачу с сайта

result потом сравнить на "" и сделать, что там надо, прерывание цикла или эксепшн сгенерировать. хз что там надо в коде, не смотрел. :bk:
 
  • Спасибо
Реакции: Mikhail B.

nrg8601

Client
Регистрация
22.06.2010
Сообщения
74
Благодарностей
68
Баллы
18
Как-то так. Все в один кубик C#
C#:
string proxy = project.Variables["ip"].Value;

for(int i = 0; i <= 4; i++)
{
    if (i >= 3) throw new Exception("Не работает прокси: " + proxy);
 
    //Получаем ответ с текущим proxy
    string ipRes = ZennoPoster.HttpGet("http://chek.zennolab.com/proxy.php", proxy, "UTF-8", ZennoLab.InterfacesLibrary.Enums.Http.ResponceType.BodyOnly, 3000, "", "Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.99 Safari/537.36", true, 5);
 
    //Парсим IP из ответа
    ipRes = Regex.Match(ipRes, @"\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}").Value;
    //Если спарсили успешно выходим из цикла
    if (!string.IsNullOrWhiteSpace(ipRes))
    {
        break;
    }
    // Пауза
    Thread.Sleep(1500);
}
 
Последнее редактирование:
  • Спасибо
Реакции: hvg84 и Mikhail B.

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)