bankrollhunter / market-breadth

计算美股、A股市场宽度
MIT License
191 stars 95 forks source link

us_get_info.py::Line38:: symbols, msg = usstock.get_symbols() does not work #5

Closed moonmonk14134 closed 3 years ago

moonmonk14134 commented 3 years ago

@hk-Lei opendatatools.usstock.get_symbols() seems not work anymore due to yahoo.

  1. could you verify?
  2. if opendatatools.usstock.get_symbols() not work, any alternative.

thank you. moonmonk

MARGI3 commented 3 years ago

@moonmonk14134

here is my solution, hope this will help you.

OpenDataTools issue

StackOverflow

you should replace the US market url which is used by opendatatools

File "/usr/local/lib/python3.7/site-packages/opendatatools/usstock/usstock_agent.py", line 29

url = 'https://old.nasdaq.com/screening/companies-by-name.aspx?letter=0&exchange=%s&render=download' % market
moonmonk14134 commented 3 years ago

@MARGI3 it works. Thank you 👍

wh5231 commented 3 years ago

Traceback (most recent call last): File "task/us_get_info.py", line 38, in symbols, msg = usstock.get_symbols() File "D:\Program Files (x86)\anaconda\lib\site-packages\opendatatools\usstock\usstock_interface.py", line 11, in get_symbols return usstock_agent.get_symbols() File "D:\Program Files (x86)\anaconda\lib\site-packages\opendatatools\usstock\usstock_agent.py", line 37, in get_symbols df_nasdaq = self._get_symbols('nasdaq') File "D:\Program Files (x86)\anaconda\lib\site-packages\opendatatools\usstock\usstock_agent.py", line 30, in _get_symbols response = self.do_request(url, None, method='GET', type='binary') File "D:\Program Files (x86)\anaconda\lib\site-packages\opendatatools\common\rest_agent.py", line 32, in do_request res = self.session.get(url, params=param, kwargs) File "D:\Program Files (x86)\anaconda\lib\site-packages\requests\sessions.py", line 546, in get return self.request('GET', url, kwargs) File "D:\Program Files (x86)\anaconda\lib\site-packages\requests\sessions.py", line 533, in request resp = self.send(prep, send_kwargs) File "D:\Program Files (x86)\anaconda\lib\site-packages\requests\sessions.py", line 646, in send r = adapter.send(request, kwargs) File "D:\Program Files (x86)\anaconda\lib\site-packages\requests\adapters.py", line 510, in send raise ProxyError(e, request=request) requests.exceptions.ProxyError: HTTPSConnectionPool(host='old.nasdaq.com', port=443): Max retries exceeded with url: /screening/companies-by-name.aspx?letter=0&exchan ge=nasdaq&render=download (Caused by ProxyError('Cannot connect to proxy.', RemoteDisconnected('Remote end closed connection without response')))

hk-Lei commented 3 years ago

把 opendatatools 换成这个吧: https://github.com/hk-Lei/OpenData