python爬蟲之基金信息存儲
1 前言
前面已經(jīng)講了很多次要進行數(shù)據(jù)存儲,終于在上一篇中完成了數(shù)據(jù)庫的設(shè)計,在這一篇就開始數(shù)據(jù)的存儲操作,在數(shù)據(jù)存儲的這個部分,會將之前抓取到的基金列表,基金基本信息和基金變動信息以及ETF信息進行存儲。
2 信息存儲
2.1 基金基本信息存儲
在這里獲取基金信息包括兩個部分,一部分是場外基金另外一部分是場外基金信息。之在前的文章中,我們已經(jīng)獲完成了場外基金和ETF基金信息的代碼,因此在這里我們僅僅需要存儲數(shù)據(jù)庫即可,那么有個問題,基金的信息是隨時發(fā)生變更的或者更新的。在保存時需要先判斷基金代碼是否已經(jīng)存在,如果存在則更新,如果不存在則新增,但是這樣效率有點低,這時候就用到之前的文章內(nèi)容,使用這樣 on duplicate key update 的語句就可以一條sql搞定了。
舉例如下所示:
INSERT INTO `tb_fund_list`(`code`, `name`, `fund_type`) VALUES ('000363','國泰聚信價值優(yōu)勢混合C','混合型-靈活')
on duplicate key update `code` = '000363', `name` = '國泰聚信價值優(yōu)勢混合C' ,`fund_type` = '混合型-靈活';如果存在000363基金的話,我們就進行更新操作,如果不存在那么久插入數(shù)據(jù)。
具體實現(xiàn)的代碼如下圖所示:

2.2 基金變動信息獲取
基金的變動信息不論是場內(nèi)基金還是場外基金都是一樣的獲取方式,在這里就可以使用通用的邏輯進行處理了,就是之前抓取基金變動信息和基金價格信息的方式。

3 需要改進的地方
3.1 基金類型
現(xiàn)在基金基本信息中的基金類型還是中文,這樣的中文存儲起來不符合常用的編碼規(guī)范,之前沒有處理是因為還不知道有多少種基金的類型,現(xiàn)在已經(jīng)獲取到了所有的基金,這個時候我們需要查詢一下所有的基金類型,然后建立枚舉來表述不同的基金類型。
# 獲取所有的基金類型信息 select distinct fund_type from tb_fund_list;
根據(jù)查詢出來的基金類型,最終定義的基金類型如下圖所示:
fund_type_dic = {
"QDII": "1",
"商品(不含QDII)": "2",
"股票型": "3",
"指數(shù)型-股票": "4",
"混合型-偏債": "51",
"混合型-偏股": "52",
"混合型-平衡": "53",
"混合型-靈活": "61",
"債券型-中短債": "62",
"債券型-可轉(zhuǎn)債": "63",
"債券型-混合債": "64",
"債券型-長債": "65"
}根據(jù)經(jīng)驗來說,債券型的基金相對比較多,如果對債券基金感興趣的
可以時常更新數(shù)據(jù),在后續(xù)的操作中以非債券型基金為主進行分析,數(shù)據(jù)總量相對較小,批量更新的時間也相對較短。
3.2 基金的更新順序
在之前的基金獲取過程中,總體來講獲取的順序是混亂的,在最終的數(shù)據(jù)結(jié)果存儲時,需要將獲取的信息基金拼接和組裝。最終的更新數(shù)據(jù)順序為:
- 1 更新場外基金列表(新增或者更新)
- 2 更新ETF信息列表(新增或者更新)
- 3 查詢基金的基本信息進行更新操作
- 4 查詢基金的階段變動信息進行更新
4 總結(jié)
獲取基金的信息已經(jīng)完畢,已經(jīng)把基金信息保存成功,在下一章中將介紹如何建立線性模型去評估基金的分數(shù),為投資基金做出定量分析。
到此這篇關(guān)于python爬蟲之基金信息存儲的文章就介紹到這了,更多相關(guān)python信息存儲內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python網(wǎng)絡(luò)編程之socket與socketserver
這篇文章介紹了Python網(wǎng)絡(luò)編程之socket與socketserver,文中通過示例代碼介紹的非常詳細。對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-05-05
Flask?+?MySQL如何實現(xiàn)用戶注冊,登錄和登出的項目實踐
本文主要介紹了Flask?+?MySQL?如何實現(xiàn)用戶注冊,登錄和登出的項目實踐,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2022-06-06
python 動態(tài)渲染 mysql 配置文件的示例
這篇文章主要介紹了python 動態(tài)渲染 mysql 配置文件的示例,幫助大家更好的理解和使用python,感興趣的朋友可以了解下2020-11-11
Python如何實現(xiàn) HTTP echo 服務(wù)器
本文介紹了如何使用Python實現(xiàn)一個簡單的HTTPecho服務(wù)器,該服務(wù)器支持GET和POST請求,并返回JSON格式的響應(yīng),GET請求返回請求路徑、方法、頭和查詢字符串,POST請求還返回請求體內(nèi)容,服務(wù)器的使用方法和測試示例也一并提供,感興趣的朋友跟隨小編一起看看吧2025-01-01
python數(shù)據(jù)結(jié)構(gòu)之遞歸方法講解
這篇文章主要介紹了python數(shù)據(jù)結(jié)構(gòu)之遞歸講解,遞歸是解決問題的一種方法,它將問題不斷地分成更小的子問題,直到子問題可以用普通的方法解決。通常情況下,遞歸會使用一個不停調(diào)用自己的函數(shù),下面來看看文章對此的詳細介紹吧2021-12-12

