|
4 | 4 | import datetime |
5 | 5 | import os |
6 | 6 | import six |
7 | | -import types |
8 | 7 |
|
9 | | -from scrapy import signals, log as scrapy_log |
| 8 | +from scrapy import signals |
10 | 9 | from scrapy.crawler import CrawlerRunner, Crawler |
11 | 10 | from scrapy.exceptions import DontCloseSpider |
12 | 11 | from scrapy.http import Request |
@@ -85,45 +84,6 @@ def cleanup_logging(result): |
85 | 84 |
|
86 | 85 | return dfd.addBoth(cleanup_logging) |
87 | 86 |
|
88 | | - def _setup_crawler_logging(self, crawler): |
89 | | - log_observer = scrapy_log.start_from_crawler(crawler) |
90 | | - if log_observer: |
91 | | - monkey_patch_and_connect_log_observer(crawler, log_observer) |
92 | | - if self.log_observer: |
93 | | - monkey_patch_and_connect_log_observer(crawler, self.log_observer) |
94 | | - |
95 | | - def _stop_logging(self): |
96 | | - if self.log_observer: |
97 | | - try: |
98 | | - self.log_observer.stop() |
99 | | - except ValueError: |
100 | | - # exception on kill |
101 | | - # exceptions.ValueError: list.remove(x): x not in list |
102 | | - # looks like it's safe to ignore it |
103 | | - pass |
104 | | - |
105 | | - |
106 | | -def monkey_patch_and_connect_log_observer(crawler, log_observer): |
107 | | - """Ugly hack to close log file. |
108 | | -
|
109 | | - Monkey patch log_observer.stop method to close file each time |
110 | | - log observer is closed. |
111 | | - I prefer this to be fixed in Scrapy itself, but as |
112 | | - Scrapy is going to switch to standart python logging soon |
113 | | - https://github.com/scrapy/scrapy/pull/1060 |
114 | | - this change wouldn't be accepted in preference of merging |
115 | | - new logging sooner. |
116 | | -
|
117 | | - """ |
118 | | - def stop_and_close_log_file(self): |
119 | | - self.__stop() |
120 | | - self.write.__self__.close() |
121 | | - |
122 | | - log_observer.__stop = log_observer.stop |
123 | | - log_observer.stop = types.MethodType( |
124 | | - stop_and_close_log_file, log_observer) |
125 | | - crawler.signals.connect(log_observer.stop, signals.engine_stopped) |
126 | | - |
127 | 87 |
|
128 | 88 | class CrawlManager(object): |
129 | 89 | """ |
|
0 commit comments