dongzhaorui 2 лет назад
Родитель
Сommit
7b27c2176c
1 измененных файлов с 13 добавлено и 16 удалено
  1. 13 16
      A数据处理/site_monitor/monitor.py

+ 13 - 16
A数据处理/site_monitor/monitor.py

@@ -53,6 +53,14 @@ class MonitorParser(threading.Thread):
         for i in range(3):
             try:
                 response = request.get_response()
+                if response.status_code != 200:
+                    if any([
+                        response.text is None,
+                        len(response.plain_text) == 0,
+                        response.tags()['tags_count'] == 0
+                    ]):
+                        continue
+                break
             except Error as e:
                 if 'The certificate for this server is invalid.' in e.message:
                     url = url.replace('https', 'http')
@@ -63,21 +71,6 @@ class MonitorParser(threading.Thread):
             except requests_exceptions as e:
                 logger.exception(e)
                 break
-            else:
-                if response.status_code != 200:
-                    if any([
-                        response.text is None,
-                        len(response.plain_text) == 0,
-                        response.tags()['tags_count'] == 0
-                    ]):
-                        continue
-
-                break
-        else:
-            if response.status_code != -1:
-                response = Response(response)
-            # 设置编码
-            response.encoding = response.encoding or "utf-8"
 
         logger.debug(
             """
@@ -95,6 +88,10 @@ class MonitorParser(threading.Thread):
             )
         )
 
+        if response.status_code != -1:
+            response = Response(response)
+        # 设置编码
+        response.encoding = response.encoding or "utf-8"
         return response
 
     def __add_items_to_db(self, task, items):
@@ -198,4 +195,4 @@ class MonitorServer(threading.Thread):
 
 
 if __name__ == '__main__':
-    MonitorServer(thread_nums=4).start()
+    MonitorServer(thread_nums=5).start()