您当前的位置:首页 > 财经百科 > 股票 > 基础

Python股票分析之股票数据采集循环完整代码

时间:2020-07-10 09:54:11  来源:  作者:

目标:在中国的股票市场上盈利,每周都有单个股票盈利2%,月总盈利超过2%

计划实现方式:Pycharm + Anaconda3 + Python3 + Django + AKShare + MongoDB

目前采用的实现方式:Pycharm + Anaconda3 + Python3 + Flask + AKShare

以后可能会用到 :MongoDB , SQLAlchemy ,baostock ,Tushare

机器学习 会在以后的实践中逐步用到。

实现方式

上一篇文章写了采集的方法。本篇文章包含完整代码和调用代码。

采用后台执行的方式。

gupiao.py 如下:

import akshare as ak
import threading
import datetime
import os
from threading import Thread


def get_start():
    start_stock_daily()


# 这里就是核心了,调用这部分就会自动下载 深圳A股 的所有股票的历史记录
def start_stock_daily(indicator="A股列表", folder="sz_a", prefix="sz"):
    file_path = "D:/work/data/" + folder + "/"
    file_path_name = get_sz_a(file_path, indicator)
    print(file_path_name)
    num = 0
    with open(file_path_name, "r", encoding='UTF-8') as stock_lines:
        for stock_line in stock_lines.readlines():
            num = num + 1
            if num == 1:
                continue
            stock_line_arr = stock_line.split("|")
            symbol = prefix + stock_line_arr[5]
            print("股票信息=" + symbol + "||" + stock_line_arr[6])
            stock_csv = get_stock_daily(file_path, symbol)
            print("stock_csv=" + stock_csv)


# 获得深圳主板A股列表,每天获取一次不重复获取
# file_path 需要全路径,以 | 进行间隔
# indicator 可选参数 "A股列表", "B股列表", "AB股列表", "上市公司列表", "主板", "中小企业板", "创业板"
def get_sz_a(file_path, indicator="A股列表"):
    today = datetime.datetime.today()
    file_name = "sz_a_" + today.strftime('%Y%m%d') + ".csv"
    if not os.path.exists(file_path):  # 如果路径不存在则创建
        os.makedirs(file_path)
    if os.path.exists(file_path + file_name):
        print("今日已经获取无需再次获取," + today.strftime('%Y%m%d'))
        return file_path + file_name
    stock_info_sz_df = ak.stock_info_sz_name_code(indicator=indicator)
    stock_info_sz_df.to_csv(file_path + file_name, sep="|")
    print('获取深圳主板A股列表并存储为CSV!' + today.strftime('%Y%m%d'))
    return file_path + file_name


# 根据股票代码获取股票历史数据
# symbol 股票代码 需要前缀 sh 上海  sz 深圳,例如:sz300846
def get_stock_daily(file_path, symbol):
    stock_zh_a_daily_hfq_df = ak.stock_zh_a_daily(symbol=symbol)  # 返回不复权的数据
    file_name = symbol + '.csv'
    stock_zh_a_daily_hfq_df.to_csv(file_path + file_name)
    return file_path + file_name

调用下载的部分,注意命名我随便写的,请根据情况自己修改,App.py 如下:

from flask import Flask
import akshare as ak
import gupiao
import datetime
import os
from concurrent.futures import ThreadPoolExecutor
import time

executor = ThreadPoolExecutor(2)

app = Flask(__name__)

@app.route('/test_thread')
def test_thread():
    executor.submit(gupiao.get_start)
    return "thread is running at  background !!!"


if __name__ == '__main__':
    app.run()

使用 Flask 框架,生成一个项目,然后创建一个gupiao.py 在 app.py 中调用,然后运行项目。

在浏览器里面访问 http://127.0.0.1:5000/test_thread

就能在后台看到如图的画面,整个深圳A股的下载时间大约在2个小时到3个小时。

Python股票分析之股票数据采集循环完整代码

股票历史数据

下载到本地如图

Python股票分析之股票数据采集循环完整代码

股票历史数据

爬取数据部分就完成了,之后就是筛选了。



Tags:Python股票分析   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,如有任何标注错误或版权侵犯请与我们联系(Email:2595517585@qq.com),我们将及时更正、删除,谢谢。
▌相关推荐
之前用JAVA自己写了一个计算 MACD 的方法,用了不少时间,主要是要反复的验证计算结果的对错,验证程序和代码的准确性,后来终于成功了,并且计算精度更加高,这次用Python做,下载的数据...【详细内容】
2020-07-15  Tags: Python股票分析  点击:(320)  评论:(0)  加入收藏
目标:在中国的股票市场上盈利,每周都有单个股票盈利2%,月总盈利超过2%计划实现方式:Pycharm + Anaconda3 + Python3 + Django + AKShare + MongoDB目前采用的实现方式:Pycharm +...【详细内容】
2020-07-10  Tags: Python股票分析  点击:(379)  评论:(0)  加入收藏
▌简易百科推荐
当有人在纪念钱钟书去世23周年之际,那句“越是聪明人,越要懂得下笨功夫”的名言警句又被拎出来了。 的确,再次重温,心灵上仍有冲击。 胡适之也有类似的一句话,“这个世界聪明人...【详细内容】
2021-12-27  闲闲财经    Tags:股市   点击:(2)  评论:(0)  加入收藏
氢能源是国家未来大力发展的方向之一,是“十四五”规划的重点。氢能是公认的清洁能源,作为低碳和零碳能源正在脱颖而出。21世纪,我国和美国、日本、加拿大、欧盟等都制定了氢能...【详细内容】
2021-12-27  财经浩然兄    Tags:氢能源   点击:(6)  评论:(0)  加入收藏
什么是氢能源:氢在地球上主要以化合态的形式出现,是宇宙中分布最广泛的物质,它构成了宇宙质量的75%,是二次能源。氢能在21世纪有可能在世界能源舞台上成为一种举足轻重的能源,氢...【详细内容】
2021-12-27  纵股论金    Tags:氢能源   点击:(3)  评论:(0)  加入收藏
周末没事干刷某球,看到一哥们,今年买股票从50万炒到了12.9万。 这篇文章挺火的,4000多个评论,1500个点赞。 我大概看了一下,这哥们一开始打算开通科创板,因为自己资金不够向亲戚借...【详细内容】
2021-12-27  价值成长  今日头条  Tags:投资   点击:(5)  评论:(0)  加入收藏
一、 指数分析指数21年整体是急跌慢涨的走势,随着22年全面注册制后,股票会越来越多,指数会继续延续急跌慢涨震荡上行的走势,以及会继续延续板块的高低切换风格,结构化行情将是常...【详细内容】
2021-12-27  股市成长记丶    Tags:股市   点击:(5)  评论:(0)  加入收藏
科创板以及创业板注册制已经有了成功的模板,所以目前我国具备了全面推行注册制的条件。在实行全面注册制之后,对资本市场来说是一个利好消息,对于众多散户来说,同样是一个利好消...【详细内容】
2021-12-21  毒舌财经    Tags:注册制   点击:(9)  评论:(0)  加入收藏
炒股就是八个字:只干龙头,不干杂毛!下面就给大家列举各领域的龙头公司,看了这篇文章,以后千万不要再什么股票都买了!喝最烈的酒,骑最快的马,拿最快的剑,登最高的山! 其实一直以来我...【详细内容】
2021-12-08  股里论道  今日头条  Tags:龙头公司   点击:(25)  评论:(0)  加入收藏
网络安全板块是什么 1、网络安全网络安全是计算机行业中网络、计算、储存外的第四个基础设施。是计算机行业中增速最快的超千亿的板块。2、近几个月来大涨四个原因滴滴事件...【详细内容】
2021-12-08  朱赫    Tags:网络安全   点击:(19)  评论:(0)  加入收藏
作为交易者,我们都应该知晓市场可能处于趋势阶段,也可能处于震荡阶段。通常,大多数市场都处于区间震荡走势中,只有不到三分之一的时候表现出趋势行为,而趋势则是我们最容易获利的...【详细内容】
2021-12-07  汇商    Tags:均值回归交易策略   点击:(20)  评论:(0)  加入收藏
一,心法想要在市场长期舒服的生存下去,先要明白一点,股市不能用常规数理化一样的科学来理解,更不能通过计算机对其模式化操作,那样也行不通,股市实际上更像乐理,美学等一样如一门艺...【详细内容】
2021-12-07  禅股论道    Tags:A股   点击:(18)  评论:(0)  加入收藏
相关文章
    无相关信息
最新更新
栏目热门
栏目头条