11import datetime
2+ import logging
23import re
34import sys
45import time
2223#: Hostname for API access
2324GITHUB_URL = "https://github.com"
2425
26+ #: Logger for requests module
27+ LOGGER = logging .getLogger ('github2.request' )
28+
2529
2630def charset_from_headers (headers ):
2731 """Parse charset from headers
@@ -49,8 +53,8 @@ class GithubRequest(object):
4953 GithubError = GithubError
5054
5155 def __init__ (self , username = None , api_token = None , url_prefix = None ,
52- debug = False , requests_per_second = None , access_token = None ,
53- cache = None , proxy_host = None , proxy_port = None ):
56+ requests_per_second = None , access_token = None ,
57+ cache = None , proxy_host = None , proxy_port = None ):
5458 """Make an API request.
5559
5660 :see: :class:`github2.client.Github`
@@ -59,7 +63,6 @@ def __init__(self, username=None, api_token=None, url_prefix=None,
5963 self .api_token = api_token
6064 self .access_token = access_token
6165 self .url_prefix = url_prefix
62- self .debug = debug
6366 if requests_per_second is None :
6467 self .delay = 0
6568 else :
@@ -117,8 +120,7 @@ def make_request(self, path, extra_post_data=None, method="GET"):
117120 since_last_in_seconds = (since_last .days * 24 * 60 * 60 ) + since_last .seconds + (since_last .microseconds / 1000000.0 )
118121 if since_last_in_seconds < self .delay :
119122 duration = self .delay - since_last_in_seconds
120- if self .debug :
121- sys .stderr .write ("delaying API call %s\n " % duration )
123+ LOGGER .warning ("delaying API call %s second(s)" , duration )
122124 time .sleep (duration )
123125
124126 extra_post_data = extra_post_data or {}
@@ -142,9 +144,9 @@ def raw_request(self, url, extra_post_data, method="GET"):
142144 query = self .encode_authentication_data (parse_qs (query ))
143145 url = urlunsplit ((scheme , netloc , path , query , fragment ))
144146 response , content = self ._http .request (url , method , post_data , headers )
145- if self . debug :
146- sys . stderr . write ("URL:[%s] POST_DATA:%s RESPONSE_TEXT: [%s] \n " % (
147- url , post_data , content ) )
147+ if LOGGER . isEnabledFor ( logging . DEBUG ) :
148+ logging . debug ("URL: %r POST_DATA: %r RESPONSE_TEXT: %r" , url ,
149+ post_data , content )
148150 if response .status >= 400 :
149151 raise RuntimeError ("unexpected response from github.com %d: %r" % (
150152 response .status , content ))
0 commit comments