Решение найдено, указанные прокси не поддерживают SMTP, из всех доступых арендных нашел только по 25 порт открытый, но mail,gmail, yandex уже не поддерживают 25 порт, тк он не зашифрованный.
Баг или норма? при установке прокси
-
1.HTTP-GET для получение значение прокси
2. Содержание ответа = [[PROXY]]
3. Установить прокси [[PROXY]]так вот, если HTTP-GET не смог достучаться до адреса (обрыв связи, таймаут, что угодно) он никак об этом не сообщает.
Далее я делаю установку прокси из переменной [[PROXY]] (она пустая), снова никакой ошибки скрипта. Далее открываю сайты. Случайно обнаружил, что айпи то мой :)теперь пришлось добавить:
- что бы проверить успешность GET запроса, после него использую "была ли ошибка"
- далее регуляркой проверяю [[PROXY]] есть ли там значение похожее на мой прокси формат и не пустая ли переменная
вопрос:
что можно придумать, что бы посоветовать автору добавить в следующие версии? :) или все и так норм, просто городить огород блоков с проверками? -
@Sevenup Сделать прокси пустым нужно, если тебе необходимо его отключить. По моему всё логично и понятно. Да, ещё прокси отключается, если в значении переменной есть пробел. Или несколько.
То есть IF [[PROXY]] != "" пропустит, если[[PROXY]] == " " или [[PROXY]] == " "Но запросы будут идти с твоего ip.
-
@Fox said in Баг или норма? при установке прокси:
@Sevenup Сделать прокси пустым нужно, если тебе необходимо его отключить. По моему всё логично и понятно. Да, ещё прокси отключается, если в значении переменной есть пробел. Или несколько.
То есть IF [[PROXY]] != "" пропустит, если[[PROXY]] == " " или [[PROXY]] == " "Но запросы будут идти с твоего ip.
ага, я это уже понял :) думаю вот как проверять теперь применялся ли прокси или нет
-
@Sevenup не понятна логика, так как в настройках ресурса можна выставить, что использовать определенный прокси успешно 1 раз(тоесть 1 строку)...и никаких проверок не нужно, скрипт сам все анализирует. А было бы правильно файл с проксями почистить от пустых полей.
-
@seedgg Это если у тебя файл с проксями, а если отдельная функция парсит халявные прокси? Проверка нужна на непредвиденный случай. Такая проверка спасёт, если в прокси вдруг заглянут буквы :)
А так, согласен, если используешь файл с прокси, то проще его изначально нормально подготовить..
-
@Fox Халявные прокси, и работа с ними под ресурс, предварительно не чекнуть и не обработать...ну это уже с грани фантастики, ну а впринцыпе, если парсиш списки с халявными проксями, я еще не встречал, чтобы там проскакивало, что-то не то(при правильных регулярках)....хотя встречал, ну только в определенно неправильно настроеных парсерах.
Ну а если выходить с такой логики, то определенная функция абсолютно все может подготовить, для дальнейшей работы, тоесть если напарсили, сразу и чекать нужно, и записывать в файл(ресурс) уже готовые и обработаные данные(тоесть чистые), а не как говорилось выше, городить проверки и всякие костыли. Ну это я так думаю, и впринцыпе, я так все и обрабатываю, на мое усмотрение, это экономит кучу времени. -
@seedgg said in Баг или норма? при установке прокси:
@Sevenup не понятна логика, так как в настройках ресурса можна выставить, что использовать определенный прокси успешно 1 раз(тоесть 1 строку)...и никаких проверок не нужно, скрипт сам все анализирует. А было бы правильно файл с проксями почистить от пустых полей.
Прочтите еще раз первый пост, я не использую файлы, все данные получаю методом GET с удаленного сервера.
@Fox said in Баг или норма? при установке прокси:
@Sevenup Эмм, самое элементарное - это использовать экшен подходит ли строка под регулярное выражение
\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\:\d+Если true то дальше работать..
ага, приблизительно так и делаю, я это и описал в первом посте "регуляркой проверяю [[PROXY]] есть ли там значение похожее на мой прокси формат и не пустая ли переменная"
ребята, речь не идет о парсинге халявних прокси. Суть вопроса в том "как узнать, установился ли прокси" :) в моем примере описанном выше я попался на том, что прокси не устанавливался, потому добавил множество проверок строки прокси перед ее активацией в БАСе. Интересно было узнать/поделиться иными способами. В любом случае всем спасибо за участие.
-
@Sevenup Ну исходя из опыта...получая данные методом ГЕТ и парся эти данные на наличие прокси, пустых строк не может быть...но ладно....просто, я понимаю, вы работаете в совсем не в том режиме(не в том режиме в котором позволяет работать БАС) С проксями никаким нюансов не должно быть....просто нужно правильно понять как работает сам БАС. Он сам все отфильтровывает и все настройки выставляются в настройках ресурсов... Просто мало данных, что нужно, для того чтобы объяснить как рабоет БАС и всю eго логику. Если вы это поймете, то у вас проект на половину кода станет легче. Большенство всего он умеет делать сам, просто нужно знать что.
-
@Sevenup said in Баг или норма? при установке прокси:
@seedgg said in Баг или норма? при установке прокси:
@Sevenup не понятна логика, так как в настройках ресурса можна выставить, что использовать определенный прокси успешно 1 раз(тоесть 1 строку)...и никаких проверок не нужно, скрипт сам все анализирует. А было бы правильно файл с проксями почистить от пустых полей.
Прочтите еще раз первый пост, я не использую файлы, все данные получаю методом GET с удаленного сервера.
@Fox said in Баг или норма? при установке прокси:
@Sevenup Эмм, самое элементарное - это использовать экшен подходит ли строка под регулярное выражение
\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\:\d+Если true то дальше работать..
ага, приблизительно так и делаю, я это и описал в первом посте "регуляркой проверяю [[PROXY]] есть ли там значение похожее на мой прокси формат и не пустая ли переменная"
ребята, речь не идет о парсинге халявних прокси. Суть вопроса в том "как узнать, установился ли прокси" :) в моем примере описанном выше я попался на том, что прокси не устанавливался, потому добавил множество проверок строки прокси перед ее активацией в БАСе. Интересно было узнать/поделиться иными способами. В любом случае всем спасибо за участие.
ты изначально с сервера забираешь прокси, и как у тебя так получается что в переменную не попадает прокся?
забирай проксю такой регуляркой\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}:\d{1,5} -
@Fox said in Баг или норма? при установке прокси:
Если прокси не обнаружится, то переменная будет пустой, значение "", которое и применяется к установки прокси.
Значь просто проверять на пустое значение переменную и все
Переменкой или регуляркой? ))
ну что ты пристал к пьяному человеку )))
-
@Zenodrot said in Баг или норма? при установке прокси:
ТС вот так можно юзать

хотел ответить комментарием каждому посту, которые выше, но данный пост в общем объясняет всю необходимость :) спасибо! Нечто подобное и пришлой реализовать, думал может есть более изящные решения, потому и завел тему.
На всякий случай повторюсь, в моем случае, когда GET запрос не удавался, об этом не было ошибки и переменная была пустой, соответственно при установке прокси он не устанавливался и работа браузера не проксировалась. Теперь я понимаю, что перед установкой прокси нужно обязательно проверять значение переменной.
-
@Fox said in Баг или норма? при установке прокси:
@Sevenup Я при парсинге нужной инфы использую экшен Подходит ли строка под регулярное выражение и If
trueто первое вхождение регулярки.C такой логикой и регуляркой в твоем варианте можно пройти проверку но не заюзать проксю, если дергать прокси из мусорного текста а не из ровного списка
пример
прокси;100.10.10.100:545451)прокси блабларез:
100.10.10.100:545451моя регулярка
прокси;100.10.10.100:545451)прокси блабларез:
100.10.10.100:54545\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}:\d{1,5}- Количество портов ограничено с учётом 16-битной адресации (максимум 5 цифр порт)
p.s
Все порты разделены на три диапазона — общеизвестные (или системные, 0—1023), зарегистрированные (или пользовательские, 1024—49151) и динамические (или частные, 49152—65535).моя регулярка в любом бою применима ;)
-
@Zenodrot Это ведь не битва регулярок, тем более, что они почти идентичны.. Я забираю прокси из ровного списка, но на всякий пожарный проверяю своей регуляркой.
если дергать прокси из мусорного текста
Всё зависит от задачи.
В твоём варианте, если проверка будет в цикле, и [[PROXY]] будет найдена в предыдущей итерации, то прокси будет использоваться старый.
Я люблю регулярки, и интересные задачи. Только вот уже почти неделю ни чего интересного нет :(
