Уведомления

Группа в Telegram: @pythonsu

#1 Авг. 19, 2014 02:36:34

gelius
Зарегистрирован: 2013-03-18
Сообщения: 132
Репутация: +  0  -
Профиль   Отправить e-mail  

grab + проверка прокси

Есть желание чекать соксы непосредственно перед использованием.
Допустим:

# coding: utf-8
from grab import Grab
g = Grab()
g.setup_proxylist(proxy_file='socks.txt', proxy_type='socks5', read_timeout=None, auto_init=True, auto_change=False)
g.go('https://google.com')
Вернуло ошибку. Например:
  File "/usr/local/lib/python2.7/site-packages/grab/base.py", line 268, in go
    return self.request(url=url, **kwargs)
  File "/usr/local/lib/python2.7/site-packages/grab/base.py", line 343, in request
    self.transport_request()
  File "/usr/local/lib/python2.7/site-packages/grab/transport/curl.py", line 280, in transport_request
    raise GrabTimeoutError(ex[0], ex[1])
grab.error.GrabTimeoutError: [Errno 28] SSL connection timeout
Или любую другую.
Как в случае возникновения ошибки не прерывать работу скрипта, а вернуться к:
g.setup_proxylist(proxy_file='socks.txt', proxy_type='socks5', read_timeout=None, auto_init=True, auto_change=False)
Или другой способ проверить сокс.

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version