Also handling time out in feedparser.

This commit is contained in:
Samuel Clay 2023-05-09 09:35:56 -04:00
parent 792ba9d204
commit 8adc2035ea

View file

@ -195,10 +195,13 @@ class FetchFeed:
except (requests.adapters.ConnectionError, TimeoutError): except (requests.adapters.ConnectionError, TimeoutError):
raw_feed = None raw_feed = None
if not raw_feed or raw_feed.status_code >= 400: if not raw_feed or raw_feed.status_code >= 400:
logging.debug( if raw_feed:
" ***> [%-30s] ~FRFeed fetch was %s status code, trying fake user agent: %s" logging.debug(
% (self.feed.log_title[:30], raw_feed.status_code, raw_feed.headers) " ***> [%-30s] ~FRFeed fetch was %s status code, trying fake user agent: %s"
) % (self.feed.log_title[:30], raw_feed.status_code, raw_feed.headers)
)
else:
logging.debug(" ***> [%-30s] ~FRFeed fetch timed out, trying fake headers: %s" % (self.feed.log_title[:30], address))
raw_feed = requests.get( raw_feed = requests.get(
self.feed.feed_address, self.feed.feed_address,
headers=self.feed.fetch_headers(fake=True), headers=self.feed.fetch_headers(fake=True),
@ -254,6 +257,7 @@ class FetchFeed:
http.client.BadStatusLine, http.client.BadStatusLine,
http.client.IncompleteRead, http.client.IncompleteRead,
ConnectionResetError, ConnectionResetError,
TimeoutError,
) as e: ) as e:
logging.debug(' ***> [%-30s] ~FRFeed fetch error: %s' % (self.feed.log_title[:30], e)) logging.debug(' ***> [%-30s] ~FRFeed fetch error: %s' % (self.feed.log_title[:30], e))
pass pass