MCPcopy Create free account
hub / github.com/awolfly9/IPProxyTool / error_parse

Method error_parse

crawler/spiders/validator/validator.py:104–141  ·  view source on GitHub ↗
(self, failure)

Source from the content-addressed store, hash-verified

102 return True
103
104 def error_parse(self, failure):
105 request = failure.request
106 self.log('error_parse value:%s url:%s meta:%s' % (failure.value, request.url, request.meta))
107
108 proxy = failure.request.meta.get('proxy_info')
109 table = failure.request.meta.get('table')
110
111 if table == self.name:
112 self.sql.del_proxy_with_id(table_name = table, id = proxy.id)
113 else:
114 # TODO... 如果 ip 验证失败应该针对特定的错误类型,进行处理
115 pass
116
117 #
118 # request = failure.request.meta
119 # utils.log('request meta:%s' % str(request))
120 #
121 # # log all errback failures,
122 # # in case you want to do something special for some errors,
123 # # you may need the failure's type
124 # self.logger.error(repr(failure))
125 #
126 # #if isinstance(failure.value, HttpError):
127 # if failure.check(HttpError):
128 # # you can get the response
129 # response = failure.value.response
130 # self.logger.error('HttpError on %s', response.url)
131 #
132 # #elif isinstance(failure.value, DNSLookupError):
133 # elif failure.check(DNSLookupError):
134 # # this is the original request
135 # request = failure.request
136 # self.logger.error('DNSLookupError on %s', request.url)
137 #
138 # #elif isinstance(failure.value, TimeoutError):
139 # elif failure.check(TimeoutError):
140 # request = failure.request
141 # self.logger.error('TimeoutError on url:%s', request.url)
142
143 def save_page(self, ip, data):
144 filename = '{time} {ip}'.format(time = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S:%f'), ip = ip)

Callers

nothing calls this directly

Calls 1

del_proxy_with_idMethod · 0.45

Tested by

no test coverage detected