Skip to content

Commit

Permalink
make default Client.get deprecated into _get
Browse files Browse the repository at this point in the history
  • Loading branch information
leVirve committed Aug 7, 2016
1 parent a771f4a commit 4aff7ff
Show file tree
Hide file tree
Showing 4 changed files with 13 additions and 9 deletions.
4 changes: 2 additions & 2 deletions dcard/forums.py
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ def __call__(self, name):
return self

def get(self, no_school=False):
forums = self.client.get(api.forums_url)
forums = self.client.get_json(api.forums_url)
if no_school:
return [forum for forum in self._extract_general(forums)]
return forums
Expand Down Expand Up @@ -65,7 +65,7 @@ def eager_for_metas(bundle):

def get_single_page_metas():
while True:
yield self.client.get(self.posts_meta_url, params=params)
yield self.client.get_json(self.posts_meta_url, params=params)

paged_metas = zip(count(start=1), get_single_page_metas())

Expand Down
2 changes: 1 addition & 1 deletion dcard/posts.py
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ def get_comments_serial(self, post_id):
params = {}
comments = []
while True:
_comments = self.client.get(comments_url, params=params)
_comments = self.client.get_json(comments_url, params=params)
if len(_comments) == 0:
break
comments += _comments
Expand Down
8 changes: 6 additions & 2 deletions dcard/utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ def __init__(self, workers=8):
status_forcelist=[500, 502, 503, 504])
self.req_session.mount('https://', HTTPAdapter(max_retries=self.retries))

def get(self, url, **kwargs):
def _get(self, url, **kwargs):
try:
response = self.req_session.get(url, **kwargs)
data = response.json()
Expand All @@ -39,7 +39,7 @@ def get(self, url, **kwargs):
'when get {}, error {}; and retry#{}...'
.format(url, e, man_retry))
kwargs['man_retry'] = man_retry + 1
return self.get(url, **kwargs)
return self._get(url, **kwargs)
except ServerResponsedError:
logger.error(
'when get {}, error {}; status_code {}'
Expand All @@ -59,6 +59,10 @@ def get_stream(self, url, **kwargs):
def fut_get(self, url, **kwargs):
return FutureRequest(self, self.fut_session.get(url, **kwargs))

def get_json(self, url, **kwargs):
request = self.fut_get(url, **kwargs)
return request.json()


class FutureRequest:

Expand Down
8 changes: 4 additions & 4 deletions tests/test_utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,19 +5,19 @@
class TestClient:

def test_get_and_server_responsed_error(self, client):
resp = client.get('https://test-for-error')
resp = client._get('https://test-for-error')
assert resp == {}

def test_get_and_value_error_with_man_retry(self, client):
resp = client.get('https://test-for-error', error='ValueError')
resp = client._get('https://test-for-error', error='ValueError')
assert resp == {}

def test_get_and_httplib_incomplete_read(self, client):
resp = client.get('https://test-for-error', error='IncompleteRead')
resp = client._get('https://test-for-error', error='IncompleteRead')
assert resp == {}

def test_get_and_keep_retry_error(self, client):
resp = client.get('https://test-for-error', error='RetryError')
resp = client._get('https://test-for-error', error='RetryError')
assert resp is None

def test_get_stream(self, client):
Expand Down

0 comments on commit 4aff7ff

Please sign in to comment.