Авто орпределение протокола не получилось сделать?В данный момент использую такой сниппет.
C#:if (project.Variables["TurnProxy"].Value == "True" ) { // проверяем включены-ли прокси или нет. IZennoList proxyList = project.Lists["Proxy"]; //Получаем указатель на лист с проксями int count = 100; // количество неудачных проверок подряд string protocol = ""; if (project.Variables["Protocol"].Value == "") //(пустая переменная = http://) project.Variables["Protocol"].Value = "http"; protocol = project.Variables["Protocol"].Value + "://"; // из переменной, в переменной значение socks5:// или http:// (пустая переменная = http://) for (int i = 0; i < count; i++) { if (proxyList.Count == 0) break; string proxy = string.Empty; lock (SyncObjects.ListSyncer) { proxy = proxyList[0]; proxyList.RemoveAt(0); } var content = ZennoPoster.HttpGet(project.Variables["CHECK_ADRESS"].Value, // CHECK_ADRESS - url для проверки protocol + proxy, "UTF-8", ZennoLab.InterfacesLibrary.Enums.Http.ResponceType.HeaderAndBody, 15000); project.Variables["debug"].Value = content; if (!Regex.Match(content, "^$|/blocked|заблокирован|407 Proxy").Success) // ""- если ответ пустой, && - или, содержит blocked в заголовках или ответе, то прокси не подходит { lock (SyncObjects.ListSyncer) { proxyList.Add(proxy); // записываем живую проксю в конец списка* } instance.SetProxy(protocol + proxy); // назначаем прокси в проект project.Variables["proxy"].Value = protocol + proxy; // назначем прокси в переменную return proxy; // возвращаем в ответе снипета прокси } lock (SyncObjects.ListSyncer) { // proxyList.Add(proxy); // записываем проксю в конец списка в любом случае (предыдущее за комментировать!)* } project.SendWarningToLog(proxy+" Прокся плохая,чекаю ещё!"); // если прокся плохая пишем,что она плохая. } throw new Exception("Плохие прокси!");//Если израсходовали все попытки подключения , то выходим из блока c# с таким сообщением. }
Не стояло такой задачи.Авто орпределение протокола не получилось сделать?
Скорей нет желания заниматся. т.к. писать на шарпе это тяжело для меня. А так думаю можно было бы сделать двойную проверку на HTTP и SOCKS5 и уже назначать прокси которая успешно прошла по одному из протоколов.Нет возможности прикрутить?, есть много сайтов, где есть возможность парсить бесплатно.
у меня знаний нет в C#, были бы знания прикрутил бы.
Можешь подсказать, как это в шаблоне сделать, определить протокол?Скорей нет желания заниматся. т.к. писать на шарпе это тяжело для меня. А так думаю можно было бы сделать двойную проверку на HTTP и SOCKS5 и уже назначать прокси которая успешно прошла по одному из протоколов.
Даже не буду спрашивать поделиться, ибо мне нечего взамен предложить, и денег нет(Как то так. ))
Посмотреть вложение 72462
Ну наводку я дал, дальше немного потрудиться придется.Даже не буду спрашивать поделиться, ибо мне нечего взамен предложить, и денег нет(
Это я понял, спасибо большее, и сделать смогу, не могу понять куда запрос делать? Или просто запрос на SOCKS4,SOCKS5, HTTP, HTTPS и что ответит тот протокол и есть, бесплатные прокси бывают (чаще всего) через раз, работают, типа, сейчас сделал запрос, ответа нет, а через 20 секунд, ответ есть. Или какой-то другой запрос?Ну наводку я дал, дальше немного потрудиться придется.
Ну делай 3 проверки. Нафиг прокси которое в отваливаются каждые 20 сек)Это я понял, спасибо большее, и сделать смогу, не могу понять куда запрос делать? Или просто запрос на SOCKS4,SOCKS5, HTTP, HTTPS и что ответит тот протокол и есть, бесплатные прокси бывают (чаще всего) через раз, работают, типа, сейчас сделал запрос, ответа нет, а через 20 секунд, ответ есть. Или какой-то другой запрос?
Думаю надо добавить еще if и туда второй запрос. Пока приостановил изучение шарпа, а так подправил бы. Сейчас пользуюсь версией с альтернативным методом запроса, метод в этом коде устарел.полезный шаблончик. а как сделать чтобы проверял прокси сразу на два сайта?