Python實現股票信息查詢

目前兩個常用的股票信息CPI:
騰訊行情CTPAPI接口源碼
新浪行情CTPAPI
使用requests模塊爬取股票信息,這里以查詢股票市值為例。

一、根據股票名稱查詢股票代碼

在python文件夾下設置兩個表格GPLIST.xlsx,其中是A股全部代碼和股票名稱,query_stock_names.xlsx`是要查詢的股票名稱

stockfinder-3.py

import openpyxl  def create_stock_dict(file_path):  stock_dict = {}  wb = openpyxl.load_workbook(filename=file_path)  ws = wb.active  for row in ws.iter_rows(values_only=True):  stock_dict[row[1]] = row[0]  return stock_dict  def get_stock_code(stock_name, stock_dict):  return stock_dict.get(stock_name, "Not Found")  def main():  stock_dict = create_stock_dict('GPLIST.xlsx')  wb = openpyxl.load_workbook(filename='query_stock_names-1.xlsx')  ws = wb.active  for row in ws.iter_rows(min_row=1, min_col=1, max_col=1, values_only=True):  stock_name = row[0]  stock_code = get_stock_code(stock_name, stock_dict)  ws.cell(row=ws.max_row+1, column=2, value=stock_code)  wb.save('query_stock_names-1.xlsx')  if __name__ == "__main__":  main()

二、股票市值查詢

1.單個股票市值查詢
lianghua-2.py

import requests  
from dateutil import parser  
from datetime import datetime,time  
from time import sleep  def get_tick(stock_code):  if stock_code[0] in ['5','6']:  prefix = 'sh'  elif stock_code[0] in ['0','3']:  prefix = 'sz'  else:  raise Exception('prefix')  page = requests.get('http://qt.gtimg.cn/q='+prefix+stock_code)  stock_info = page.text  stock_info = stock_info.split('~')  open_ = float(stock_info[5])# string  high = float(stock_info[33])  low = float(stock_info[34])  close = float(stock_info[3])  shizhi = float(stock_info[45])  trade_datetime = parser.parse(stock_info[30]) #將string格式解析成日期格式  return shizhi  if __name__ == "__main__":  stock_c = '601088'  print(get_tick(stock_c))

2.批量股票市值查詢
stockshizhiquery-2.py

import requests  
import openpyxl  def get_tick(stock_code):  if stock_code[0] in ['5', '6']:  prefix = 'sh'  elif stock_code[0] in ['0', '3']:  prefix = 'sz'  else:  raise Exception('Invalid stock code prefix')  page = requests.get('http://qt.gtimg.cn/q=' + prefix + stock_code)  stock_info = page.text  stock_info = stock_info.split('~')  shizhi = float(stock_info[45]) if stock_info[45] else 0.0  # 如果市值為空,則設為0  return shizhi  # 打開 Excel 文件  
workbook = openpyxl.load_workbook('query_stock_names-1.xlsx')  # 獲取第一個工作表  
sheet = workbook.active  # 獲取每支股票的市值,并將其追加到第三列  
for row in sheet.iter_rows(min_row=1, values_only=True):  # 假設股票代碼在第一列,從第二行開始讀取數據  stock_code = str(row[0])  shizhi = get_tick(stock_code)  # sheet.append([shizhi])  sheet.cell(row=sheet.max_row + 1, column=3, value=shizhi)  workbook.save('query_stock_names-1_updated.xlsx')

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/719305.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/719305.shtml
英文地址,請注明出處:http://en.pswp.cn/news/719305.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

如何在飛書接入ChatGPT并結合內網穿透實現公網遠程訪問智能AI助手

文章目錄 前言環境列表1.飛書設置2.克隆feishu-chatgpt項目3.配置config.yaml文件4.運行feishu-chatgpt項目5.安裝cpolar內網穿透6.固定公網地址7.機器人權限配置8.創建版本9.創建測試企業10. 機器人測試 前言 在飛書中創建chatGPT機器人并且對話,在下面操作步驟中…

MySQL 高可用解決方案(雙主雙從)

1.環境說明 操作系統:centos7.7 主服務器:node2(192.168.1.102) 從服務器:node3(192.168.1.103) keepalived中虛擬ip(VIP):192.168.1.100 2.準備事項 主庫和從庫數據庫的版本一致把主庫的數據同步給從庫一份 #對主庫進行全局讀鎖定 FLUSH…

GEE代碼條帶問題——sentinel-1接縫處理的問題

問題 我有興趣確定 NDVI 損失最大的年份。我創建了一個函數來收集所有陸地衛星圖像并應用預處理。當我導出結果以識別 NDVI 損失最大年份時,生成的數據產品與陸地衛星場景足跡有可怕的接縫線。造成這種情況的原因是什么以及如何調整代碼? sentinel1數據…

flutter之終極報錯

看到這個報錯頭都大了 一開始在網上各種搜搜,然后有人說是flutter版本的問題,改完版本之后還是不對,又是各種搜搜搜 有人說是環境變量的問題,后來改了環境變量,媽的,竟然還不行,想砸電腦的心都…

Xcode :Could not build module ‘WebKit‘ 已驗證解決

問題&#xff1a;Could not build module WebKit 具體報錯如下&#xff1a; error: type argument nw_proxy_config_t (aka struct nw_proxy_config *) is neither an Objective-C object nor a block type property (nullable, nonatomic, copy) NSArray<nw_proxy_config_…

C++學習筆記:set和map

set和map set什么是setset的使用 關聯式容器鍵值對 map什么是mapmap的使用map的插入方式常用功能map[] 的靈活使用 set 什么是set set是STL中一個底層為二叉搜索樹來實現的容器 若要使用set需要包含頭文件 #include<set>set中的元素具有唯一性(因此可以用set去重)若用…

【java-面試題】start和run的區別

【java-面試題】start和run的區別 在run方法內部&#xff0c;只是單純的描述了該線程要執行的內容。run方法是線程的入口。 在start方法內部&#xff0c;會調用到系統api&#xff0c;從而在系統內核中創建出線程&#xff0c;創建線程后&#xff0c;再自動調用run方法。 在代碼…

掌握未來技術:一站式深度學習學習平臺體驗!

介紹&#xff1a;深度學習是機器學習的一個子領域&#xff0c;它模仿人腦的分析和學習能力&#xff0c;通過構建和訓練多層神經網絡來學習數據的內在規律和表示層次。 深度學習的核心在于能夠自動學習數據中的高層次特征&#xff0c;而無需人工進行復雜的特征工程。這種方法在圖…

大模型筆記:RAG(Retrieval Augmented Generation,檢索增強生成)

1 大模型知識更新的困境 大模型的知識更新是很困難的&#xff0c;主要原因在于&#xff1a; 訓練數據集固定,一旦訓練完成就很難再通過繼續訓練來更新其知識參數量巨大,隨時進行fine-tuning需要消耗大量的資源&#xff0c;并且需要相當長的時間LLM的知識是編碼在數百億個參數中…

格式規范性知識的探究式學習

對于格式規范性這種規定性的知識&#xff0c;可以采用“增刪改”的方式進行控究式學習。 #include<stdio.h>int main(){printf("%.1f\n", 8.0/5.0);return 0;} 這個printf語句分兩部分&#xff0c;本身的功能就是格式化輸出&#xff0c;因此參數完全是格式化…

一些C語言知識

C語言的內置類型&#xff1a; char short int long float double C99中引入了bool類型&#xff0c;用來表示真假的變量類型&#xff0c;包含true&#xff0c;false。 這個代碼的執行結果是什么&#xff1f;好好想想哦&#xff0c;坑挺多的。 #include <stdio.h>int mai…

STM32(5) GPIO(2)輸出

1.點亮LED 1.1 推挽接法和開漏接法 要想點亮LED&#xff0c;有兩種接法 推挽接法&#xff1a; 向寄存器寫1&#xff0c;引腳輸出高電平&#xff0c;LED點亮&#xff1b;向寄存器寫0&#xff0c;引腳輸出低電平&#xff0c;LED熄滅。 開漏接法&#xff1a; 向寄存器寫0&…

Kubernetes operator 前置知識篇

云原生學習路線導航頁&#xff08;持續更新中&#xff09; 本文是 Kubernetes operator學習 系列的前置知識篇&#xff0c;幫助大家對 Operator 進行初步了解Kubernetes operator學習系列 快捷鏈接 Kubernetes operator 前置知識篇Kubernetes operator&#xff08;一&#xff0…

《精益DevOps》:填補IT服務交付的認知差距,實現高效可靠的客戶期望滿足

寫在前面 在當今的商業環境中&#xff0c;IT服務交付已經成為企業成功的關鍵因素之一。然而&#xff0c;實現高效、可靠、安全且符合客戶期望的IT服務交付卻是一項艱巨的任務。這要求服務提供商不僅具備先進的技術能力&#xff0c;還需要擁有出色的組織協作、流程管理和態勢感…

UniApp項目處理小程序分包

目前 uniApp也成為一種 App端開發的大趨勢 因為在目前跨端 uniApp可以說相當優秀 可以同時兼容 H5 PC 小程序 APP 的技術 目前市場屈指可數 那么 說到微信小程序 自然就要處理分包 因為微信小程序對應用大小限制非常銘感 限制在2MB 超過之后就會無法真機調試與打包 不過需要注…

快速排序C語言代碼實現(2)

#include<stdio.h> void quick_sort(int arr[], int left, int right) {if (left < right) {int i left, j right, pivot arr[i];while (i < j) {while (i<j&&arr[j]>pivot) {//此時判斷使用i<j的目的是為了最終的目標位置是ij時的位置j--;}if…

vue項目中使用antvX6新手教程,附demo案例講解(可拖拽流程圖、網絡拓撲圖)

前言&#xff1a; 之前分別做了vue2和vue3項目里的網絡拓撲圖功能&#xff0c;發現對antv X6的講解博客比較少&#xff0c;最近終于得閑碼一篇了&#xff01; 需求&#xff1a; 用戶可以自己拖拽節點&#xff0c;節點之間可以隨意連線&#xff0c;保存拓撲圖數據后傳給后端&…

cPanel面板安裝付費的SSL證書

前不久遇到購買Hostease服務器的客戶反饋需要安裝SSL證書。因為安裝 SSL 證書不僅可以保護用戶數據安全&#xff0c;增加用戶信任度&#xff0c;提升搜索引擎排名&#xff0c;還有助于符合法規和標準&#xff0c;防止網絡攻擊。 安裝SSL證書可以通過如下步驟: 1. 選擇 SSL 證書…

數學建模【多元線性回歸模型】

一、多元線性回歸模型簡介 回歸分析是數據分析中最基礎也是最重要的分析工具&#xff0c;絕大多數的數據分析問題&#xff0c;都可以使用回歸的思想來解決。回歸分析的任務就是&#xff0c;通過研究自變量X和因變量Y的相關關系&#xff0c;嘗試去解釋Y的形成機制&#xff0c;進…

Linux配置網卡功能

提示:工具下載鏈接在文章最后 目錄 一.network功能介紹二.配置network功能2.1 network_ip配置檢查 2.2 network_br配置2.2.1 配置的網橋原先不存在檢查2.2.2 配置的網橋已存在-修改網橋IP檢查2.2.3 配置的網橋已存在-只添加網卡到網橋里檢查 2.3 network_bond配置檢查 2.4 netw…