我使用Python 3.X从Jupyter Notebook的网站中提取数据,使用Opera版本67.0.3575.137。下面是一个简单的代码
import requests
import json
import pandas as pd
from datetime import datetime
from datetime import timedelta
pd.options.display.float_format = '{:20,.2f}'.format
pd.set_option('display.max_colwidth', None)
import numpy as np
url="https://www.nseindia.com/market-data/exchange-traded-funds-etf"
headers = { "User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.163 Safari/537.36 OPR/67.0.3575.137"}
r=requests.get(url, headers=headers)
r.status_code
# df1=pd.DataFrame().from_records(r['data'])
但我得到以下错误
C:ProgramDataAnacondalibsite-packagesrequestsadapters.py in send(self, request, stream, timeout, verify, cert, proxies)
496
497 except (ProtocolError, socket.error) as err:
--> 498 raise ConnectionError(err, request=request)
499
500 except MaxRetryError as e:
ConnectionError: ('Connection aborted.', OSError("(10060, 'WSAETIMEDOUT')"))
请帮助解决此问题,因为无法弄清楚为什么在相同的URL下出现错误https://www.nseindia.com/market-data/exchange-traded-funds-etf在浏览器中运行良好。
感谢
我在计算机上运行了您的代码,运行时没有出现错误。我得到了一个status_code=200你可能应该检查Jupyter笔记本的权限设置。
WSAETIMEDOUT错误意味着连接方在一段时间后没有正确响应。