使用Python和 Streamlit 创建和部署股票价格 Web 应用程序
在本文中,我们将了解如何创建和部署股票价格 Web 应用程序。
为了创建一个处理数据科学的令人惊叹的 Web 应用程序,我们有一个完美的平台来执行这项任务。 Streamlit 和Python包以最快的方式构建和共享数据应用程序。
Streamlit 是开源的,任何人都可以为它做出贡献,但首先要在本地安装 Streamlit。
pip install streamlit
Streamlit 确保以最快的方式构建和共享数据应用程序。多年来,股票一直是趋势问题。每个收入高的人都喜欢投资股票市场。股票市场是公开上市公司股票交易的场所。由于我们正在处理股票价格细节,我们可能需要 Web Scrap 细节。但让我们回避的是,有一个这样的Python库可以处理股票价格。雅虎财经与在线广告公司合作,为您提供尽可能相关和有用的广告。
pip install yfinance
使用 Streamlit 创建股票价格 Web 应用程序
首先导入 Web 应用程序所需的必要模块。
import streamlit as st
import yfinance as finance
您需要了解 Markdown 的基本语法才能在 Web App 上显示文本。您可以查看此 Markdown 简介并开始使用。一旦您熟悉了使用 Streamlit 显示消息的 Markdown 语言,就变得轻而易举。
设置标题名称、侧边栏标题和副标题:
st.title("Build and Deploy Stock Market App Using Streamlit")
st.header("A Basic Data Science Web Application")
st.sidebar.header("Geeksforgeeks \n TrueGeeks")
代码的实际部分现在开始。由于我们要分析谷歌和微软的股票价格,初始化ticker属性,获取GOOGL和MSFT过去一个月的历史记录。
yfinance 允许您检查一段时间内的更新。 yfinance 返回具有多级列名的 pandas.DataFrame,其中一个级别用于股票代码,一个级别用于股票价格数据。您可以查看下面显示公司的标题、数据、摘要信息的代码,并绘制出惊人的图表。
yfinace.download 显示表格数据,其中包括不同时间间隔的开盘价、最高价、最低价、收盘价和成交量数据。初始化代码后,您可以查看代码的详细信息,包括详细摘要、员工总数、州和国家名称、收入增长以及更多信息。
我们已经为此 Web 应用程序使用了最重要的命令,您可以查看以下代码。
Python
import streamlit as st
import yfinance as finance
def get_ticker(name):
company = finance.Ticker(name) # google
return company
# Project Details
st.title("Build and Deploy Stock Market App Using Streamlit")
st.header("A Basic Data Science Web Application")
st.sidebar.header("Geeksforgeeks \n TrueGeeks")
company1 = get_ticker("GOOGL")
company2 = get_ticker("MSFT")
# fetches the data: Open, Close, High, Low and Volume
google = finance.download("GOOGL", start="2021-10-01", end="2021-10-01")
microsoft = finance.download("MSFT", start="2021-10-01", end="2021-10-01")
# Valid periods: 1d,5d,1mo,3mo,6mo,1y,2y,5y,10y,ytd,max
data1 = company1.history(period="3mo")
data2 = company2.history(period="3mo")
# markdown syntax
st.write("""
### Google
""")
# detailed summary on Google
st.write(company1.info['longBusinessSummary'])
st.write(google)
# plots the graph
st.line_chart(data1.values)
st.write("""
### Microsoft
""")
st.write(company2.info['longBusinessSummary'], "\n", microsoft)
st.line_chart(data2.values)
运行代码的命令
streamlit run myapp.py
使用 Streamlit 部署 Data Science Web App
Streamlit Web 应用程序可以通过 Internet 上可用的各种选项进行部署以供直接使用。关于如何部署 Streamlit 应用程序有不同的平台。您也可以使用 Heroku 部署您的应用程序。查看在 Heroku 上部署应用程序的完整指南。
我们将研究 Streamlit 本身提供的直接方法。如果您的应用托管在公共 GitHub 存储库中并且您希望世界上任何人都能够访问它,那么免费的社区层是完美的解决方案。在继续之前,您将需要您自己的 GitHub 帐户,您将在其中保存您的 Web 应用程序。一旦你把你的应用放到 GitHub 上,确保你已经添加了一个 requirements.txt 文件。该文件将包含必需的Python库。
您只需按照三个步骤来部署您的应用程序:
第 1 步:为您的 Streamlit 应用程序创建一个 Github 存储库,然后注册 (https://forms.streamlit.io/community-sign-up) 到 Streamlit 社区。
第 2 步:您需要等待 2 个工作日,然后才能最终部署您的应用程序。打开您将从 https://share.streamlit.io/ 社区收到的邮件并创建一个新应用程序。
第 3 步:接下来选择您在第一步中创建的存储库。选择 repo_name 后,选择保存代码的分支名称和主Python文件。
部署应用程序后,您可以使用以下 URL 找到它:
https://share.streamlit.io/[username]/[repo_name]/[default_branch_name]/[your_py_code_file_name]