aboutsummaryrefslogtreecommitdiff
path: root/app/tasks/phpbbparser.py
diff options
context:
space:
mode:
Diffstat (limited to 'app/tasks/phpbbparser.py')
-rw-r--r--app/tasks/phpbbparser.py9
1 files changed, 8 insertions, 1 deletions
diff --git a/app/tasks/phpbbparser.py b/app/tasks/phpbbparser.py
index 3df8470..752c7a6 100644
--- a/app/tasks/phpbbparser.py
+++ b/app/tasks/phpbbparser.py
@@ -74,7 +74,14 @@ def __extract_signature(soup):
def getProfile(url, username):
url = url + "/memberlist.php?mode=viewprofile&un=" + urlEncodeNonAscii(username)
- contents = urllib.request.urlopen(url).read().decode("utf-8")
+ req = urllib.request.urlopen(url, timeout=5)
+ if req.getcode() == 404:
+ return None
+
+ if req.getcode() != 200:
+ raise IOError(req.getcode())
+
+ contents = req.read().decode("utf-8")
soup = BeautifulSoup(contents, "lxml")
if soup is None:
return None