Bei der Verwendung von Pandas „read_html“ tritt ein Fehler auf: „ValueError: ungültiges Literal für int() mit Basis 10:
Posted: 17 Jan 2025, 02:55
Ich habe pd.read_html erfolgreich verwendet für die meisten Webseiten, die ich scanne, aber das Folgende löst den Fehler aus, auf den verwiesen wird:
'https://sec.gov/Archives/edgar/data/320 ... 462974.xml'
Wenn ich die Quelle der Webseite überprüfe, Ich kann die fehlerhafte Rowspan-Zuweisung sehen:
Die Webseite wird korrekt aufgelöst, es handelt sich also eindeutig nicht um einen Fehler. Was ist hier die Lösung?
Hier ist der Code, den ich verwende, um diese Datei zu analysieren und Fehler wird ausgegeben:
Im Gegensatz dazu lautet die folgende Datei ohne Probleme:
'https://data.sec.gov/Archives/edgar/dat ... 345X03/wf- form4_167546711444862.xml'
**Die Domänen „data.sec.gov“ und „sec.gov“ werden jeweils separat für den API- und den webbasierten Zugriff verwendet
'https://sec.gov/Archives/edgar/data/320 ... 462974.xml'
Wenn ich die Quelle der Webseite überprüfe, Ich kann die fehlerhafte Rowspan-Zuweisung sehen:
Code: Select all
Rule 10b5-1(c) Transaction Indication
Hier ist der Code, den ich verwende, um diese Datei zu analysieren und Fehler wird ausgegeben:
Code: Select all
headers = {
"User-Agent": "Alias (alias118@gmail.com)",
"Accept-Encoding": "gzip, deflate"
"Host": "www.sec.gov"
}
filing_url = 'https://data.sec.gov/Archives/edgar/data/320193/000032019323000048/xslF345X04/wf-form4_168064750462974.xml'
x = requests.get(filing_url, headers=headers)
if x.status_code != 200:
print(f'Error loading xml for file:\n{filing_url}\nReason: {x.reason}')
else:
print(filing_url,'\n')
columns = [
'title',
'trade_date',
'execution_date',
'trade_code',
'trade_code_v',
'shares_traded',
'acq_code',
'price',
'shares_remaining',
'own_type',
'relationship'
]
try:
tbls = pd.read_html(x.content)
except:
pass
'https://data.sec.gov/Archives/edgar/dat ... 345X03/wf- form4_167546711444862.xml'
**Die Domänen „data.sec.gov“ und „sec.gov“ werden jeweils separat für den API- und den webbasierten Zugriff verwendet