Add socket timeouts
This commit is contained in:
@@ -7,6 +7,7 @@ django.setup()
|
||||
|
||||
import re
|
||||
import logging
|
||||
import socket
|
||||
from datetime import timedelta, datetime
|
||||
from urllib.parse import urlparse
|
||||
|
||||
@@ -26,10 +27,13 @@ from boards.models import BoardFeed, Article, Board
|
||||
DEFAULT_NUM_WORKER_THREADS = 5
|
||||
DEFAULT_ENTRIES_LIMIT = 100
|
||||
MIN_REFRESH_DELTA = timedelta(minutes=30)
|
||||
REQUEST_TIMEOUT = 10
|
||||
|
||||
log = logging.getLogger()
|
||||
queue = queue.Queue()
|
||||
|
||||
socket.setdefaulttimeout(REQUEST_TIMEOUT)
|
||||
|
||||
|
||||
@click.command()
|
||||
@click.option('--num-workers', default=DEFAULT_NUM_WORKER_THREADS, help="Number of parser threads")
|
||||
@@ -152,7 +156,7 @@ def resolve_real_url(entry):
|
||||
depth -= 1
|
||||
|
||||
try:
|
||||
response = requests.head(url)
|
||||
response = requests.head(url, timeout=REQUEST_TIMEOUT)
|
||||
except RequestException:
|
||||
log.warning(f"Failed to resolve real URL: {entry.link}")
|
||||
return None
|
||||
|
||||
@@ -100,7 +100,7 @@
|
||||
</div>
|
||||
|
||||
<div class="what-block" id="tipidor">
|
||||
<h2><a href="#tipidor">Почему нет моего любимого канала про аниме? Почему подборки платные? Как может Х читать такое говно? Кому вообще это нужно?</a></h2>
|
||||
<h2><a href="#tipidor">Почему нет моего любимого канала с мемами? Как может автор читать такое говно? Почему подборки платные? Кому вообще это нужно?</a></h2>
|
||||
|
||||
<p>
|
||||
Твоё мнение никому не интересно, признай.
|
||||
|
||||
Reference in New Issue
Block a user