Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
股票数据下载python无库_Python_Finance_Yahoo Finance - Fatal编程技术网

股票数据下载python无库

股票数据下载python无库,python,finance,yahoo-finance,Python,Finance,Yahoo Finance,我正在为学校(a级)编写一个项目,需要能够下载股票数据并绘制图表。我能够使用matplotlib绘制数据图表。然而,我只能使用一定数量的图书馆 我需要在不导入库的情况下获取数据,但无法这样做。我尝试从下载,但crump值不断变化,因此我不断从错误的cookie中获取错误 我怎样才能解决这个问题?或者是否有一个更容易获取数据的站点 我的代码: import requests r = requests.get("query1.finance.yahoo.com/v7/finance/downloa

我正在为学校(a级)编写一个项目,需要能够下载股票数据并绘制图表。我能够使用matplotlib绘制数据图表。然而,我只能使用一定数量的图书馆

我需要在不导入库的情况下获取数据,但无法这样做。我尝试从下载,但crump值不断变化,因此我不断从错误的cookie中获取错误

我怎样才能解决这个问题?或者是否有一个更容易获取数据的站点

我的代码:

import requests

r = requests.get("query1.finance.yahoo.com/v7/finance/download/…)

file = open(r"MSFT.csv", 'w')

file.write(r.text) file.close()

从不同交易所的第三方供应商处下载数据或订阅实时数据源。

您说:“我只允许使用一定数量的库。”这是什么意思?您应该能够使用任何需要使用的库,对吗。运行下面的脚本。它将从雅虎下载股票数据并绘制时间序列

import pandas as pd  
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
import scipy.optimize as sco
import datetime as dt
import math
from datetime import datetime, timedelta
from pandas_datareader import data as wb
from sklearn.cluster import KMeans
np.random.seed(777)


start = '2019-4-30'
end = '2019-10-31'
# N = 90
# start = datetime.now() - timedelta(days=N)
# end = dt.datetime.today()



tickers = ['MMM',
'ABT',
'ABBV',
'ABMD',
'AAPL',
'XEL',
'XRX',
'XLNX',
'XYL',
'YUM',
'ZBH',
'ZION',
'ZTS'] 

thelen = len(tickers)

price_data = []
for ticker in tickers:
    prices = wb.DataReader(ticker, start = start, end = end, data_source='yahoo')[['Adj Close']]
    price_data.append(prices.assign(ticker=ticker)[['ticker', 'Adj Close']])

df = pd.concat(price_data)
df.dtypes
df.head()
df.shape

pd.set_option('display.max_columns', 500)

df = df.reset_index()
df = df.set_index('Date')
table = df.pivot(columns='ticker')
# By specifying col[1] in below list comprehension
# You can select the stock names under multi-level column
table.columns = [col[1] for col in table.columns]
table.head()

plt.figure(figsize=(14, 7))
for c in table.columns.values:
    plt.plot(table.index, table[c], lw=3, alpha=0.8,label=c)
plt.legend(loc='upper left', fontsize=12)
plt.ylabel('price in $')

谢谢,但没有英国股票数据。我目前无法测试任何东西,但您可能想看看这里