脚本之家,脚本语言编程技术及教程分享平台!
分类导航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|shell|

服务器之家 - 脚本之家 - Python - python爬虫之基金信息存储

python爬虫之基金信息存储

2022-12-16 11:11斜月 Python

这篇文章主要介绍了python爬虫之基金信息存储,前面已经讲了很多次要进行数据存储,终于在上一篇中完成了数据库的设,在这篇文章我们就来完成数据存储操作部分的介绍,需要的朋友可以参考一下

1 前言

前面已经讲了很多次要进行数据存储,终于在上一篇中完成了数据库的设计,在这一篇就开始数据的存储操作,在数据存储的这个部分,会将之前抓取到的基金列表,基金基本信息和基金变动信息以及ETF信息进行存储。

2 信息存储

2.1 基金基本信息存储

在这里获取基金信息包括两个部分,一部分是场外基金另外一部分是场外基金信息。之在前的文章中,我们已经获完成了场外基金和ETF基金信息的代码,因此在这里我们仅仅需要存储数据库即可,那么有个问题,基金的信息是随时发生变更的或者更新的。在保存时需要先判断基金代码是否已经存在,如果存在则更新,如果不存在则新增,但是这样效率有点低,这时候就用到之前的文章内容,使用这样on duplicate key update的语句就可以一条sql搞定了。

举例如下所示:

INSERT INTO `tb_fund_list`(`code`, `name`, `fund_type`) VALUES ('000363','国泰聚信价值优势混合C','混合型-灵活')
on duplicate key update `code` = '000363', `name` = '国泰聚信价值优势混合C' ,`fund_type` = '混合型-灵活';

如果存在000363基金的话,我们就进行更新操作,如果不存在那么久插入数据。

具体实现的代码如下图所示:

python爬虫之基金信息存储

2.2 基金变动信息获取

基金的变动信息不论是场内基金还是场外基金都是一样的获取方式,在这里就可以使用通用的逻辑进行处理了,就是之前抓取基金变动信息和基金价格信息的方式。

python爬虫之基金信息存储

 

3 需要改进的地方

3.1 基金类型

现在基金基本信息中的基金类型还是中文,这样的中文存储起来不符合常用的编码规范,之前没有处理是因为还不知道有多少种基金的类型,现在已经获取到了所有的基金,这个时候我们需要查询一下所有的基金类型,然后建立枚举来表述不同的基金类型。

# 获取所有的基金类型信息
select distinct fund_type from tb_fund_list;

根据查询出来的基金类型,最终定义的基金类型如下图所示:

fund_type_dic = {
  "QDII": "1",
  "商品(不含QDII)": "2",
  "股票型": "3",
  "指数型-股票": "4",
  "混合型-偏债": "51",
  "混合型-偏股": "52",
  "混合型-平衡": "53",
  "混合型-灵活": "61",
  "债券型-中短债": "62",
  "债券型-可转债": "63",
  "债券型-混合债": "64",
  "债券型-长债": "65"
}

根据经验来说,债券型的基金相对比较多,如果对债券基金感兴趣的

可以时常更新数据,在后续的操作中以非债券型基金为主进行分析,数据总量相对较小,批量更新的时间也相对较短。

3.2 基金的更新顺序

在之前的基金获取过程中,总体来讲获取的顺序是混乱的,在最终的数据结果存储时,需要将获取的信息基金拼接和组装。最终的更新数据顺序为:

  • 1 更新场外基金列表(新增或者更新)
  • 2 更新ETF信息列表(新增或者更新)
  • 3 查询基金的基本信息进行更新操作
  • 4 查询基金的阶段变动信息进行更新

 

4 总结

获取基金的信息已经完毕,已经把基金信息保存成功,在下一章中将介绍如何建立线性模型去评估基金的分数,为投资基金做出定量分析。

到此这篇关于python爬虫之基金信息存储的文章就介绍到这了,更多相关python信息存储内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://juejin.cn/post/7033601558663299109

延伸 · 阅读

精彩推荐
  • PythonPython处理图像五个有趣场景,很实用!

    Python处理图像五个有趣场景,很实用!

    Python像是叮当猫的口袋,几乎什么都能做,适合外行小白们去摸索学习,能极大的增加对编程的兴趣。 ...

    Python大数据分析7992021-03-29
  • PythonDjango给admin添加Action的步骤详解

    Django给admin添加Action的步骤详解

    这篇文章主要给大家介绍了关于Django给admin添加Action的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用Django具有一定的参考学习价值,...

    破晓技术部落4472021-06-22
  • Python无惧面试,带你搞懂python 装饰器

    无惧面试,带你搞懂python 装饰器

    这篇文章主要介绍了python 装饰器的相关资料,帮助大家更好的理解和学习python,感兴趣的朋友可以了解下...

    Rocky04293232020-08-18
  • Python最近Python有点火? 给你7个学习它的理由!

    最近Python有点火? 给你7个学习它的理由!

    最近Python有点火?这篇文章主要为大家分享了7个你现在就该学习Python的理由,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...

    leoxu5542020-11-20
  • PythonPython实现定时任务

    Python实现定时任务

    本篇文章主要介绍了Python实现定时任务,主要有5种方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。...

    白熊花田11712020-09-20
  • Python浅析Python中signal包的使用

    浅析Python中signal包的使用

    这篇文章主要介绍了Python中signal包的使用,主要在Linux系统下对进程信号进行相关操作,需要的朋友可以参考下...

    China_OS6662020-08-03
  • PythonPython中使用hashlib模块处理算法的教程

    Python中使用hashlib模块处理算法的教程

    这篇文章主要介绍了Python中使用hashlib模块处理算法的教程,代码基于Python2.x版本,需要的朋友可以参考下 ...

    廖雪峰3632020-06-16
  • Pythonpython实现拓扑排序的基本教程

    python实现拓扑排序的基本教程

    拓扑排序是对有向无环图的一种排序,发现自己并没有真的理解拓扑排序,再次学习了下,所以下面这篇文章主要给大家介绍了关于python实现拓扑排序的基...

    赵洁钰Amy5572021-01-20