简体   繁体   English

urllib.error.HTTPError: HTTP Error 404: Not Found using pandas 即使 url 存在

[英]urllib.error.HTTPError: HTTP Error 404: Not Found using pandas even though the url exists

I was trying to run this code:我试图运行此代码:

import pandas as pd
df = pd.read_csv(r"C:\Users\Chaitanya\Desktop\Finsearch\AAPL.csv")
df = df.sort_values(by="Date")
df = df.dropna()
# calculate returns
df = df.assign(close_day_before=df.Close.shift(1))
df['returns'] = ((df.Close - df.close_day_before)/df.close_day_before)

# get options data from yahoo finance // in this case, exercise data is july 24th
r = pd.read_html('http://finance.yahoo.com/quote/AAPL/options?date=1655424000&p=AAPL')[0]

It shows error:它显示错误:

Traceback (most recent call last):
  File "c:\Users\Chaitanya\Desktop\Finsearch\finserach.py", line 10, in <module>
    r = pd.read_html('http://finance.yahoo.com/quote/AAPL/options?date=1655424000&p=AAPL')[0]
  File "C:\Users\Chaitanya\AppData\Local\Programs\Python\Python39\lib\site-packages\pandas\util\_decorators.py", line 311, in wrapper
    return func(*args, **kwargs)
  File "C:\Users\Chaitanya\AppData\Local\Programs\Python\Python39\lib\site-packages\pandas\io\html.py", line 1098, in read_html
    return _parse(
  File "C:\Users\Chaitanya\AppData\Local\Programs\Python\Python39\lib\site-packages\pandas\io\html.py", line 906, in _parse
    tables = p.parse_tables()
  File "C:\Users\Chaitanya\AppData\Local\Programs\Python\Python39\lib\site-packages\pandas\io\html.py", line 222, in parse_tables
    tables = self._parse_tables(self._build_doc(), self.match, self.attrs)
  File "C:\Users\Chaitanya\AppData\Local\Programs\Python\Python39\lib\site-packages\pandas\io\html.py", line 745, in _build_doc
    raise e
  File "C:\Users\Chaitanya\AppData\Local\Programs\Python\Python39\lib\site-packages\pandas\io\html.py", line 726, in _build_doc
    with urlopen(self.io) as f:
  File "C:\Users\Chaitanya\AppData\Local\Programs\Python\Python39\lib\site-packages\pandas\io\common.py", line 211, in urlopen
    return urllib.request.urlopen(*args, **kwargs)
  File "C:\Users\Chaitanya\AppData\Local\Programs\Python\Python39\lib\urllib\request.py", line 214, in urlopen
    return opener.open(url, data, timeout)
  File "C:\Users\Chaitanya\AppData\Local\Programs\Python\Python39\lib\urllib\request.py", line 523, in open
    response = meth(req, response)
  File "C:\Users\Chaitanya\AppData\Local\Programs\Python\Python39\lib\urllib\request.py", line 632, in http_response
    response = self.parent.error(
  File "C:\Users\Chaitanya\AppData\Local\Programs\Python\Python39\lib\urllib\request.py", line 555, in error
    result = self._call_chain(*args)
  File "C:\Users\Chaitanya\AppData\Local\Programs\Python\Python39\lib\urllib\request.py", line 494, in _call_chain
    result = func(*args)
  File "C:\Users\Chaitanya\AppData\Local\Programs\Python\Python39\lib\urllib\request.py", line 747, in http_error_302
    return self.parent.open(new, timeout=req.timeout)
  File "C:\Users\Chaitanya\AppData\Local\Programs\Python\Python39\lib\urllib\request.py", line 523, in open
    response = meth(req, response)
  File "C:\Users\Chaitanya\AppData\Local\Programs\Python\Python39\lib\urllib\request.py", line 632, in http_response
    response = self.parent.error(
  File "C:\Users\Chaitanya\AppData\Local\Programs\Python\Python39\lib\urllib\request.py", line 561, in error
    return self._call_chain(*args)
  File "C:\Users\Chaitanya\AppData\Local\Programs\Python\Python39\lib\urllib\request.py", line 494, in _call_chain
    result = func(*args)
  File "C:\Users\Chaitanya\AppData\Local\Programs\Python\Python39\lib\urllib\request.py", line 641, in http_error_default
    raise HTTPError(req.full_url, code, msg, hdrs, fp)
urllib.error.HTTPError: HTTP Error 404: Not Found``

The stack trace you posted seems to indicate that the error is coming from code that you have not posted in your question:您发布的堆栈跟踪似乎表明错误来自您未在问题中发布的代码:

Traceback (most recent call last): 
File "c:\Users\Chaitanya\Desktop\Finsearch\finserach.py", 
line 10, in **r = pd.read_html('http://finance.yahoo.com/quote/AAPL/options?date=1655424000&p=AAPL')**[0] File

Specifically, the r = pd_read_html('...) portion.具体来说, r = pd_read_html('...)部分。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM