Ошибка KeyError при попытке доступа к столбцам символов из FTP-экспорта других символов NASDAQ.Python

Программы на Python
Ответить
Anonymous
 Ошибка KeyError при попытке доступа к столбцам символов из FTP-экспорта других символов NASDAQ.

Сообщение Anonymous »

Я пытаюсь создать программу для получения списка всех (или, по крайней мере, почти всех) акций, зарегистрированных в США на всех биржах. Я попросил ИИ сгенерировать следующее предложение программы:

Код: Выделить всё

import pandas as pd
from ftplib import FTP
import io

def get_nasdaq_listed_symbols():
"""Fetches NASDAQ listed symbols from the NASDAQ FTP server."""
ftp = FTP('ftp.nasdaqtrader.com')
ftp.login()
ftp.cwd('SymbolDirectory')

# Use io.BytesIO to read file into memory
r = io.BytesIO()
ftp.retrbinary('RETR nasdaqlisted.txt', r.write)
ftp.quit()

# Process the data with pandas
# The data is tab-separated and has a footer that needs to be skipped
r.seek(0)
df = pd.read_csv(r, sep='|', skipfooter=1, engine='python')
return df['Symbol'].tolist()

def get_other_listed_symbols():
"""Fetches other listed symbols (NYSE, AMEX, etc.) from the NASDAQ FTP server."""
ftp = FTP('ftp.nasdaqtrader.com')
ftp.login()
ftp.cwd('SymbolDirectory')

r = io.BytesIO()
ftp.retrbinary('RETR otherlisted.txt', r.write)
ftp.quit()

r.seek(0)
df = pd.read_csv(r, sep='|', skipfooter=1, engine='python')
return df['Symbol'].tolist()

# Get the lists
nasdaq_symbols = get_nasdaq_listed_symbols()
other_symbols = get_other_listed_symbols()

all_symbols = nasdaq_symbols #+ other_symbols

print(f"Total NASDAQ symbols: {len(nasdaq_symbols)}")
print(f"Total other listed symbols: {len(other_symbols)}")
print(f"Total combined symbols: {len(all_symbols)}")
print("Example combined symbols:", all_symbols[:20])
Программа отлично извлекает символы из NASDAQ. Но когда он пытается получить другие перечисленные символы, я получаю KeyError:

Код: Выделить всё

return df\['Symbol'\].tolist()
Ошибка указывает на то, что «Символ» является причиной ошибки. Код в обеих подпрограммах одинаков, поле Символ на FTP-сайте одинаковое.
Что еще может быть причиной этого?

Подробнее здесь: https://stackoverflow.com/questions/798 ... s-ftp-expo
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»