ANTICHAT — форум по информационной безопасности, OSINT и технологиям
ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию.
Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club,
и теперь снова доступен на новом адресе —
forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.

13.11.2009, 19:35
|
|
Новичок
Регистрация: 10.11.2009
Сообщений: 5
Провел на форуме: 21478
Репутация:
0
|
|
хм а ты дописать можешь ???? кстати им уже занимаются так что....
|
|
|

14.11.2009, 03:46
|
|
Познающий
Регистрация: 14.01.2009
Сообщений: 93
Провел на форуме: 244235
Репутация:
39
|
|
Товарищи, есть скрипт, типа спамилки, запускаю его в 100 потоков, вначале все хорошо, снифаю со своего компа нужный протокол - видно нужную скорость, через несколько часов вижу, что скорость серьезно упала. threading.activeCount() показывает, что потоки живы. Какие есть способы дебага при такой проблеме?
|
|
|

14.11.2009, 04:00
|
|
Он хакер.
Регистрация: 01.11.2008
Сообщений: 1,756
Провел на форуме: 6462214
Репутация:
3171
|
|
Сообщение от roddik
Товарищи, есть скрипт, типа спамилки, запускаю его в 100 потоков, вначале все хорошо, снифаю со своего компа нужный протокол - видно нужную скорость, через несколько часов вижу, что скорость серьезно упала. threading.activeCount() показывает, что потоки живы. Какие есть способы дебага при такой проблеме?
А возможно целевой сервер банит? Или не справляеться с таким количеством посылаемых запросов.
|
|
|

14.11.2009, 10:05
|
|
Постоянный
Регистрация: 12.06.2008
Сообщений: 654
Провел на форуме: 4512757
Репутация:
973
|
|
Сообщение от roddik
Товарищи, есть скрипт, типа спамилки, запускаю его в 100 потоков, вначале все хорошо, снифаю со своего компа нужный протокол - видно нужную скорость, через несколько часов вижу, что скорость серьезно упала. threading.activeCount() показывает, что потоки живы. Какие есть способы дебага при такой проблеме?
DeadLocak, не ?
А дебаг лично я делал такой :
тупо везде ставишь print и наблюдаешь за работой.
Кстати, возможно еще что эксепшны ложат.
Под 2.6. была такая фигня пару раз - обработка вроде есть, обрабатывается конкретное исключение, на которое обработка стоит. Но вот остальные, которые должны были бы орать - они цук не орут, а где-то по тихому сливаются и поток перестает работать (но висит как активный).
Последний раз редактировалось login999; 14.11.2009 в 10:08..
|
|
|

14.11.2009, 10:10
|
|
Участник форума
Регистрация: 23.03.2007
Сообщений: 170
Провел на форуме: 1355906
Репутация:
211
|
|
Возник вопрос. в питоне прокси задаю так:
Код:
proxy_handler = urllib2.ProxyHandler({'http': proxy})
opener = urllib2.build_opener(proxy_handler)
Но как определить какой тип прокси(HTTP/SOCKS)? Неужели придется писать ф-ю которая повторно будет обращаться к серверу и узнавать тип прокси? о_О
|
|
|

14.11.2009, 10:20
|
|
Постоянный
Регистрация: 12.06.2008
Сообщений: 654
Провел на форуме: 4512757
Репутация:
973
|
|
Сообщение от H1Z
Возник вопрос. в питоне прокси задаю так:
Код:
proxy_handler = urllib2.ProxyHandler({'http': proxy})
opener = urllib2.build_opener(proxy_handler)
Но как определить какой тип прокси(HTTP/SOCKS)? Неужели придется писать ф-ю которая повторно будет обращаться к серверу и узнавать тип прокси? о_О
Можешь не нервничать - с соксами ты работать не будешь. Не поддерживаются. Хочешь соксов - тебе в гугл и искать httplib2 (поддержка соксов идет через SocksiPy). Из минусов - то, что прокси которые не поддерживают метод CONNECT(большинство пабликовых) лежат в осадке. Да и проверять тип проксика придется или ты думал, что питон будет угадывать ?
Последний раз редактировалось login999; 14.11.2009 в 10:22..
Причина: Заебали опечатки :(
|
|
|

14.11.2009, 10:25
|
|
Участник форума
Регистрация: 23.03.2007
Сообщений: 170
Провел на форуме: 1355906
Репутация:
211
|
|
Сообщение от login999
Можешь не нервничать - с соксами ты работать не будешь. Не поддерживаются. Хочешь соксов - тебе в гугл и искать httplib (поддержка соксов идет через SocksiPy). Из минусов - то, что прокси которые не поддерживают метод CONNECT(борльшинство пабликовых). Лежат в осадке. Да и проверять тип проксика придется или ты думал, что питон будет угадывать ?
"что питон будет угадывать" я думал что он настолько хорош что умеет даже это =))
А если серьёзно, то я привык к Qt где задаешь сразу тип прокси HTTP/SOCKS, а вот в питоне такого нет. А то что питон умеет пользоваться только HTTP прокси уже догадался, но перед тем как задать вопрос все таки надо было проверить тип вручную. Значит у madnet'a скрипт прокси врет, ведь там тип как SOCKS5. Вот я и думал что значит питон умеет работать с носками, хотя видел либу SocksiPy.
|
|
|

14.11.2009, 10:34
|
|
Постоянный
Регистрация: 12.06.2008
Сообщений: 654
Провел на форуме: 4512757
Репутация:
973
|
|
Сообщение от H1Z
"что питон будет угадывать" я думал что он настолько хорош что умеет даже это =))
А если серьёзно, то я привык к Qt где задаешь сразу тип прокси HTTP/SOCKS, а вот в питоне такого нет. А то что питон умеет пользоваться только HTTP прокси уже догадался, но перед тем как задать вопрос все таки надо было проверить тип вручную. Значит у madnet'a скрипт прокси врет, ведь там тип как SOCKS5. Вот я и думал что значит питон умеет работать с носками, хотя видел либу SocksiPy.
Это особая, уличная магия ^_0
|
|
|

14.11.2009, 13:58
|
|
Познающий
Регистрация: 14.01.2009
Сообщений: 93
Провел на форуме: 244235
Репутация:
39
|
|
m0Hze, Вариант с перегруженным целевым сервером отпадает, так как если я перезапускаю скрипт, все идет ок
Вот кусок основной кусок кода
Код:
def run(self):
while True:
proxy = self.plist.get()
try:
#Тут происходят нужные действия
except Exception, e: #proxy ordered to live long
print proxy, e
if self.log_file:
print >>self.log_file, "Thread "+str(self.id)+": "+str(e)+"\n",
self.plist.task_done()
То есть исключения вроде не должны быть причиной... В Queue.Queue() get по дефолту вроде blocking, так что, когда кончаются прокси, другой поток их освежает. В лог файле такая фигня: Сначала отмечаются все потоки, под конец активных визуально пару штук, последняя ошибка неактивных не дает никаких подсказок - обычный urlopen error
|
|
|

14.11.2009, 14:22
|
|
Постоянный
Регистрация: 12.06.2008
Сообщений: 654
Провел на форуме: 4512757
Репутация:
973
|
|
Сообщение от roddik
m0Hze, Вариант с перегруженным целевым сервером отпадает, так как если я перезапускаю скрипт, все идет ок
Вот кусок основной кусок кода
Код:
def run(self):
while True:
proxy = self.plist.get()
try:
#Тут происходят нужные действия
except Exception, e: #proxy ordered to live long
print proxy, e
if self.log_file:
print >>self.log_file, "Thread "+str(self.id)+": "+str(e)+"\n",
self.plist.task_done()
То есть исключения вроде не должны быть причиной... В Queue.Queue() get по дефолту вроде blocking, так что, когда кончаются прокси, другой поток их освежает. В лог файле такая фигня: Сначала отмечаются все потоки, под конец активных визуально пару штук, последняя ошибка неактивных не дает никаких подсказок - обычный urlopen error
Больно смахивает на то, что проксей ему не хватает. Если реализована их очистка оттуда то это и может быть затык. Сделай следующей строчкой после получения прокси чтоб он выводил тебе какой поток получил прокси и саму прокси. Сделай логгирование на каждом шаге.
P.S> http://dumpz.org/11933/ - посмотри там есть класс PROXYS, ваозможно он и решит твои проблемы...
Последний раз редактировалось login999; 14.11.2009 в 14:26..
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|