NameError: имя 'HTMLSession' не определяется при вызове yahoo_fin.options.get_expiration_dates () - PullRequest
0 голосов
/ 30 января 2020

Я звоню yahoo_fin.options.get_expiration_dates() из очень простого кода, так что маловероятно, что я загрузил другие модули с тем же именем.

Весь мой код такой:

import matplotlib.pyplot as plt
import pandas as pd

from numpy import *
from yahoo_fin import options

plt.style.use("seaborn")

expirationDates = options.get_expiration_dates("goog")

Вывод последней строки:

NameError: name 'HTMLSession' is not defined

Можете ли вы помочь мне понять, что происходит?

Ответы [ 2 ]

1 голос
/ 16 февраля 2020

yahoo_fin требует запросов - html для некоторых из его функций, включая метод yahoo_fin.options.get_expiration_dates. Вы можете установить его, используя pip (для этого требуется Python 3.6 +):

pip install requests-html

После установки вам нужно перезапустить сеанс Python. Эта ссылка предоставляет информацию о том, какие функциональные возможности требуют запросов- html.

1 голос
/ 03 февраля 2020

Установлены ли у вас запросы- html?

pip install requests-html

Этот пакет поддерживает только python 3.6.

В качестве альтернативы есть еще один пакет с именем yahooquery , который также извлечет параметры для всех дат истечения срока действия для данного тикера. Работает с python 2.7, 3.5 +.

Ticker(‘<ticker>’).option_chain

. Возвращает фрейм данных.

...