Skip to content

Commit 9f289b5

Browse files
galashourbashtage
authored andcommitted
resolve issue pydata#867 by explicitly adding headers to url _get_response
1 parent 6d6239d commit 9f289b5

File tree

2 files changed

+24
-21
lines changed

2 files changed

+24
-21
lines changed

pandas_datareader/base.py

Lines changed: 23 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -47,15 +47,15 @@ class _BaseReader(object):
4747
_format = "string"
4848

4949
def __init__(
50-
self,
51-
symbols,
52-
start=None,
53-
end=None,
54-
retry_count=3,
55-
pause=0.1,
56-
timeout=30,
57-
session=None,
58-
freq=None,
50+
self,
51+
symbols,
52+
start=None,
53+
end=None,
54+
retry_count=3,
55+
pause=0.1,
56+
timeout=30,
57+
session=None,
58+
freq=None,
5959
):
6060

6161
self.symbols = symbols
@@ -149,6 +149,9 @@ def _get_response(self, url, params=None, headers=None):
149149
"""
150150

151151
# initial attempt + retry
152+
if headers == None:
153+
headers = self.headers
154+
152155
pause = self.pause
153156
last_response_text = ""
154157
for _ in range(self.retry_count + 1):
@@ -224,14 +227,14 @@ class _DailyBaseReader(_BaseReader):
224227
"""Base class for Google / Yahoo daily reader"""
225228

226229
def __init__(
227-
self,
228-
symbols=None,
229-
start=None,
230-
end=None,
231-
retry_count=3,
232-
pause=0.1,
233-
session=None,
234-
chunksize=25,
230+
self,
231+
symbols=None,
232+
start=None,
233+
end=None,
234+
retry_count=3,
235+
pause=0.1,
236+
session=None,
237+
chunksize=25,
235238
):
236239
super(_DailyBaseReader, self).__init__(
237240
symbols=symbols,
@@ -297,7 +300,7 @@ def _in_chunks(seq, size):
297300
"""
298301
Return sequence in 'chunks' of size defined by size
299302
"""
300-
return (seq[pos : pos + size] for pos in range(0, len(seq), size))
303+
return (seq[pos: pos + size] for pos in range(0, len(seq), size))
301304

302305

303306
class _OptionBaseReader(_BaseReader):
@@ -331,7 +334,7 @@ def get_put_data(self, month=None, year=None, expiry=None):
331334
raise NotImplementedError
332335

333336
def get_near_stock_price(
334-
self, above_below=2, call=True, put=False, month=None, year=None, expiry=None
337+
self, above_below=2, call=True, put=False, month=None, year=None, expiry=None
335338
):
336339
"""
337340
***Experimental***
@@ -340,7 +343,7 @@ def get_near_stock_price(
340343
raise NotImplementedError
341344

342345
def get_forward_data(
343-
self, months, call=True, put=False, near=False, above_below=2
346+
self, months, call=True, put=False, near=False, above_below=2
344347
): # pragma: no cover
345348
"""
346349
***Experimental***

pandas_datareader/yahoo/daily.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -150,7 +150,7 @@ def _read_one_data(self, url, params):
150150
del params["symbol"]
151151
url = url.format(symbol)
152152

153-
resp = self._get_response(url, params=params)
153+
resp = self._get_response(url, params=params, headers=self.headers)
154154
ptrn = r"root\.App\.main = (.*?);\n}\(this\)\);"
155155
try:
156156
j = json.loads(re.search(ptrn, resp.text, re.DOTALL).group(1))

0 commit comments

Comments
 (0)