diff --git a/plugins/steam_calc.py b/plugins/steam_calc.py index cadf9e0..10d7f8a 100644 --- a/plugins/steam_calc.py +++ b/plugins/steam_calc.py @@ -25,14 +25,15 @@ def unicode_dictreader(utf8_data, **kwargs): @hook.command('sc') @hook.command -def steamcalc(inp): +def steamcalc(inp, reply=None): """steamcalc [currency] - Gets value of steam account and total hours played. Uses steamcommunity.com/id/. """ name = inp.strip() try: - http.get(gauge_url.format(name)) + reply("Collecting data, this may take a few seconds.") + http.get(gauge_url.format(name), timeout=15, get_method='HEAD') request = http.get(api_url.format(name)) except (http.HTTPError, http.URLError): return "Could not get data for this user." diff --git a/plugins/util/http.py b/plugins/util/http.py index 4eccdf0..4409211 100755 --- a/plugins/util/http.py +++ b/plugins/util/http.py @@ -52,7 +52,7 @@ def get_json(*args, **kwargs): def open(url, query_params=None, user_agent=None, post_data=None, - referer=None, get_method=None, cookies=False, **kwargs): + referer=None, get_method=None, cookies=False, timeout=None, **kwargs): if query_params is None: query_params = {} @@ -78,7 +78,10 @@ def open(url, query_params=None, user_agent=None, post_data=None, else: opener = urllib2.build_opener() - return opener.open(request) + if timeout: + return opener.open(request, timeout=timeout) + else: + return opener.open(request) def prepare_url(url, queries):