日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

教你用 Python 快速获取行业板块股,辅助价值投资!

發布時間:2023/12/8 python 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 教你用 Python 快速获取行业板块股,辅助价值投资! 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

大家好,我是菜鳥哥!

本篇文章,我們來聊聊如何根據「?行業板塊?」輔助我們進行價值投資。

#?1.?行業板塊

行業板塊與概念股在定義上還是有很大區別的。

一般來說,概念板塊的風險更大,基于某個消息被短期炒作,很不穩定,因此風險更大

行業板塊是按股票行業進行分類,往往注重于長期,穩定性更高。

在實際投資上,短期可以根據按「 市場熱點?」從概念股進行選股投資,中長期還是建議按「?行業板塊?」選股進行投資。

#?2. 爬取相關板塊及個股列表

目標對象:

aHR0cDovL3N1bW1hcnkuanJqLmNvbS5jbi9oeWJrLw==

2-1??板塊列表

首先,我們使用 「 Toggle JavaScript 」插件發現頁面中的行業板塊數據來源于下面的請求結果

http://**/?q=cn|bk|17&n=hqa&c=l&o=pl,d&p=1020&_dc=1650680429759

其中,參數為 p 和?_dc 為可變參數,p 代表頁碼數(從 1 開始),_dc 代表 13 位的時間戳,其他查詢參數都是固定內容

然后,我們編寫代碼獲取響應數據,使用正則表達式匹配出行業列表的數據

... self.ps_url?=?'http://**/?q=cn|bk|17&n=hqa&c=l&o=pl,d&p={}050&_dc={}' ....def?__get_timestramp(self):"""獲取13位的時間戳:return:"""return?int(round(time.time()?*?1000)) ...def?get_plates_list(self,?plate_keyword):"""獲取所有板塊:return:"""plates?=?[]index?=?0while?True:url?=?self.ps_url.format(index?+?1,?self.__get_timestramp())#?解析數據resp?=?self.session.get(url,?headers=self.headers).textmatch?=?re.compile(r'HqData:(.*?)};',?re.S)result?=?json.loads(re.findall(match,?resp)[0].strip().replace("\n",?""))if?not?result:break#?根據關鍵字,過濾有效板塊temp_plate_list?=?[item?for?item?in?result?if?plate_keyword?in?item[2]]index?+=?1for?item?in?temp_plate_list:print(item)plates.append({"name":?item[2],"plate_path":?item[1],"up_or_down":?str(item[10])?+?"%","top_stock":?item[-6]})return?plates ...

最后,根據關鍵字對板塊進行一次篩選,通過板塊名、板塊路徑 PATH、板塊漲跌幅、最大貢獻股票名稱重新組裝成一個列表

注意:通過分析頁面發現,根據板塊路徑 PATH 可以組裝成行業板塊個股列表頁面 URL

比如,行業板塊 PATH 為 400128925,那么行業板塊對應個股列表的頁面 URL 為

http://summary.**/hybk/400128925.shtml

2-2??行業個股列表

爬取行業個股列表和上一步數據展示邏輯一樣,個股列表數據同樣來源于下面請求的結果

http://**/?q=cn|s|bk{}&c=m&n=hqa&o=pl,d&p={}020&_dc={}

其中,bk 后面對應行業板塊 PATH,p 代表頁碼數,_dc 代表 13 位的時間戳

... #?個股 self.stock_url?=?'http://**/?q=cn|s|bk{}&c=m&n=hqa&o=pl,d&p={}020&_dc={}' ....def?get_stock_list(self,?plate_path):"""獲取某一個板塊下所有的個股信息包含:股票名稱、最新價格、漲跌幅、市盈率:param?plate_info::return:"""index?=?0stocks?=?[]while?True:url?=?self.stock_url.format(plate_path,?index?+?1,?self.__get_timestramp())resp?=?self.session.get(url,?headers=self.headers).textmatch?=?re.compile(r'HqData:(.*?)};',?re.S)result?=?json.loads(re.findall(match,?resp)[0].strip().replace("\n",?""))if?not?result:breakindex?+=?1for?item?in?result:if?item[-1]?<?0:continuestocks.append({"stock_name":?item[2],"pe":?item[-1],"price":?item[8],"up_or_down":?str(item[12])?+?"%"})#?按pe降序排列stocks.sort(key=lambda?x:?x["pe"])return?stocks

通過正則表達式對響應結果進行匹配后,獲取個股的名稱、PE 市盈率、價格、漲跌幅 4 個關鍵數據

最后,對個股列表按 PE 進行升序排列后直接返回

# 3. 服務化

當然,我們可以將這部分邏輯服務化供前端使用,以此提升用戶的體驗性

比如,使用 FastAPI 可以快速創建兩個服務:根據關鍵字獲取行業板塊列表、根據板塊路徑獲取個股列表

from?pydantic?import?BaseModel#?板塊 class?Plate(BaseModel):content:?str??#?關鍵字#?板塊下的個股 class?PlateStock(BaseModel):plate_path:?str??#?板塊路徑#=========================================================== ...#?獲取板塊列表 @app.post("/xag/plate_list") async?def?get_plate_list(plate:?Plate):pstock?=?PStock()try:result?=?pstock.get_plates_list(plate.content)return?success(data=result,?message="查詢成功!")except?Exception?as?e:return?fail()finally:pstock.teardown()#?獲取某一個板塊下的所有股票列表 @app.post("/xag/plate_stock_list") async?def?get_plate_list(plateStock:?PlateStock):pstock?=?PStock()try:result?=?pstock.get_stock_list(plateStock.plate_path)return?success(data=result,?message="查詢成功!")except?Exception?as?e:return?fail()finally:pstock.teardown() ...

前端以 Uniapp 為例,使用 uni-table 組件展示行業板塊列表及個股列表

部分代碼如下:

//個股列表?platestock.vue ... <view?class="box"><uni-forms?ref="baseForm"?:modelValue="baseFormData"?:rules="rules"><uni-forms-item?label="關鍵字"?required?name="content"><uni-easyinput?v-model="baseFormData.content"?placeholder="板塊關鍵字"?/></uni-forms-item></uni-forms><button?type="primary"?@click="submit('baseForm')">提交</button><!--?結果區域?--><view?class="result"?v-show="result.length>0"><uni-table?ref="table"?border?stripe?emptyText="暫無數據"><uni-tr?class="uni-item"><uni-th?align="center"?class="uni-th"?width="100%">板塊</uni-th><uni-th?align="center"?class="uni-th"?width="100%">漲跌幅</uni-th><uni-th?align="center"?class="uni-th"?width="100%">強勢股</uni-th></uni-tr><uni-tr?class="uni-item"?v-for="(item,?index)?in?result"?:key="index"?@row-click="rowclick(item)"><uni-td?class="uni-th"?align="center">{{?item.name?}}</uni-td><uni-td?align="center"?class="uni-th">{{?item.up_or_down?}}</uni-td><uni-td?align="center"?class="uni-th">{{?item.top_stock?}}</uni-td></uni-tr></uni-table></view></view> ... methods:?{//表單提交數據submit(ref)?{this.$refs[ref].validate().then(res?=>?{this.$http('xag/plate_list',?this.baseFormData,?{hideLoading:?false,hideMsg:?false,method:?'POST'}).then(res?=>?{console.log("內容:",?res.data)if?(res.data?&&?res.data.length?>?0)?{this.$tip.success("查詢成功!")this.result?=?res.data}?else?{this.$tip.success("查詢結果為空,請換一個關鍵字查詢!")}}).catch(err?=>?{console.log("產生異常,異常信息:",?err)})}).catch(err?=>?{console.log('err',?err);})} ...

最后部署完項目后,在前端頁面就能根據板塊名選擇合適的個股進行投資了

# 4. 總結一下

由于行業板塊更適用于中長期投資,我們只需要根據某一個關鍵字篩選出一個板塊,然后在板塊下的個股列表中可以非常直觀地看出市盈率較低的個股進行投資即可。

需要源碼的同學,請在后臺輸入:小助手,找他領取(暗號:行業板塊)


這是我開發的機器人公眾號小號,目前增加了天氣查詢,955公司名單,關注時間查詢;后面還會增加圖片功能和每日送書抽獎送書活動,以及調戲功能,歡迎來體驗,捧場。

全新機器人公眾號上線啦,歡迎調戲!

推薦閱讀: 入門:?最全的零基礎學Python的問題? |?零基礎學了8個月的Python??|?實戰項目?|學Python就是這條捷徑 干貨:爬取豆瓣短評,電影《后來的我們》?|?38年NBA最佳球員分析?|? ?從萬眾期待到口碑撲街!唐探3令人失望? |?笑看新倚天屠龍記?|?燈謎答題王?|用Python做個海量小姐姐素描圖?|碟中諜這么火,我用機器學習做個迷你推薦系統電影 趣味:彈球游戲? |?九宮格? |?漂亮的花?|?兩百行Python《天天酷跑》游戲! AI:?會做詩的機器人?|?給圖片上色?|?預測收入?|?碟中諜這么火,我用機器學習做個迷你推薦系統電影 小工具:?Pdf轉Word,輕松搞定表格和水印!?|?一鍵把html網頁保存為pdf!|??再見PDF提取收費!?|?用90行代碼打造最強PDF轉換器,word、PPT、excel、markdown、html一鍵轉換?|?制作一款釘釘低價機票提示器!?|60行代碼做了一個語音壁紙切換器天天看小姐姐!|

年度爆款文案

  • 1).臥槽!Pdf轉Word用Python輕松搞定!

  • 2).學Python真香!我用100行代碼做了個網站,幫人PS旅行圖片,賺個雞腿吃

  • 3).首播過億,火爆全網,我分析了《乘風破浪的姐姐》,發現了這些秘密?

  • 4).80行代碼!用Python做一個哆來A夢分身?

  • 5).你必須掌握的20個python代碼,短小精悍,用處無窮?

  • 6).30個Python奇淫技巧集?

  • 7).我總結的80頁《菜鳥學Python精選干貨.pdf》,都是干貨?

  • 8).再見Python!我要學Go了!2500字深度分析!

  • 9).發現一個舔狗福利!這個Python爬蟲神器太爽了,自動下載妹子圖片

點閱讀原文,看B站我的視頻!

總結

以上是生活随笔為你收集整理的教你用 Python 快速获取行业板块股,辅助价值投资!的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。