本人是以C++为主的开发,Python只是我的玩具语言,对它我没有特别深入的了解,但是,由于Python符合一般的语言设计原则,所以,学起这个语言会比较轻松,另外,我的这篇博客使用了一些开发技巧,比如生产者消费者模型(其实完全没有必要这么做,如果你感兴趣另外一种简单的方式,可以给我留言)!!!正则表达式的使用,我不认为我的这个是最好的,因为我并不擅长这个!下面是主要的内容:
如果你要同时查询多个股票,那么在URL最后加上一个逗号,再加上股票代码就可以了;比如你要一次查询大秦铁路(601006)和大同煤业(601001)的行情,就这样使用URL:
http://hq.sinajs.cn/list=sh601003,sh601001
查询大盘指数,比如查询上证综合指数(000001):
http://hq.sinajs.cn/list=s_sh000001
历史接口
http://money.finance.sina.com.cn/corp/go.php/vMS_MarketHistory/stockid/603299.phtml?year=2015&jidu=4
获取代码表
上海证券交易所
http://www.sse.com.cn/
上市公司代码列表
http://www.sse.com.cn/assortment/stock/list/name/
信息披露
http://www.sse.com.cn/disclosure/
深圳证券交易所
http://www.szse.cn/
股票交易品种
http://www.szse.cn/main/marketdata/jypz/colist/
信息披露
http://www.szse.cn/main/disclosure/
获取股票编码,使用python 3
元组中第一个元素代表“股票代码”,第二个元素代表“股票名称”,第三个元素代表“股票拼音简写”
#-*-coding:utf-8-*-
import requests
import re
headers_str = '''Host: www.sse.com.cn
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:43.0) Gecko/20100101 Firefox/43.0
Referer: http://www.sse.com.cn/assortment/
'''
headers_list = re.findall(r'(.*?):(.*)', headers_str)
headers = {}
for item in headers_list:
headers[item[0]] = item[1]
print(headers)
url = 'http://www.sse.com.cn/js/common/ssesuggestdata.js'
js = requests.get(url=url, headers=headers)
list = re.findall(r'val:\"(.*?)\".*?val2:\"(.*?)\".*?val3:\"(.*?)\"', js.text, re.S)
for item in list:
print(item)
得到最近10个季度的历史数据
#!/usr/bin/python3
#-*-coding:utf-8-*-
import requests
from bs4 import BeautifulSoup
import re
import time
import threading
import sys
# 1. get list about product
# headers_str = '''Host: www.sse.com.cn
# User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:43.0) Gecko/20100101 Firefox/43.0
# Referer: http://www.sse.com.cn/assortment/
# '''
# headers_list = re.findall(r'(.*?):(.*)', headers_str)
# headers = {}
# for item in headers_list:
# headers[item[0]] = item[1]
#
# url = 'http://www.sse.com.cn/js/common/ssesuggestdata.js;pv330c5904dbd20445'
# print(url)
# js = requests.get(url=url, headers=headers)
# js.encoding = js.apparent_encoding
# list_product = re.findall(r'val:\"(.*?)\".*?val2:\"(.*?)\".*?val3:\"(.*?)\"', js.text, re.S)
list_product = [('600000', '浦发银行', 'pfyx'),
('600004', '白云机场', 'byjc'),
('600005', '武钢股份', 'wggf'),
('600006', '东风汽车', 'dfqc'),
('600007', '中国国贸', 'zggm'),
('600008', '首创股份', 'scgf'),
('600009', '上海机场', 'shjc'),
('600010', '包钢股份', 'bggf'),
('600011', '华能国际', 'hngj'),
('600012', '皖通高速', 'wtgs'),
('600015', '华夏银行', 'hxyx'),
('600016', '民生银行', 'msyx'),
('600017', '日照港', 'rzg'),
('600018', '上港集团', 'sgjt'),
('600019', '宝钢股份', 'bggf'),
('600020', '中原高速', 'zygs'),
('600021', '上海电力', 'shdl'),
('600022', '山东钢铁', 'sdgt'),
('600023', '浙能电力', 'zndl'),
('600026', '中海发展', 'zhfz'),
('600027', '华电国际', 'hdgj'),
('600028', '中国石化', 'zgsh'),
('600029', '南方航空', 'nfhk'),
('600030', '中信证券', 'zxzq'),
('600031', '三一重工', 'syzg'),
('600033', '福建高速', 'fjgs'),
('600035', '楚天高速', 'ctgs'),
('600036', '招商银行', 'zsyx'),
('600037', '歌华有线', 'ghyx'),
('600038', '中直股份', 'zzgf'),
('600039', '四川路桥', 'sclq'),
('600048', '保利地产', 'bldc'),
('600050', '中国联通', 'zglt'),
('600051', '宁波联合', 'nblh'),
('600052', '浙江广厦', 'zjgs'),
('600053', '九鼎投资', 'jdtz'),
('600054', '黄山旅游', 'hsly'),
('600055', '华润万东', 'hrwd'),
('600056', '中国医药', 'zgyy'),
('600057', '象屿股份', 'xygf'),
('600058', '五矿发展', 'wkfz'),
('600059', '古越龙山', 'gyls'),
('600060', '海信电器', 'hxdq'),
('600061', '国投安信', 'gtax'),
('600062', '华润双鹤', 'hrsh'),
('600063', '皖维高新', 'wwgx'),
('600064', '南京高科', 'njgk'),
('600066', '宇通客车', 'ytkc'),
('600067', '冠城大通', 'gcdt'),
('600068', '葛洲坝', 'gzb'),
('600069', '*ST银鸽', '*STyg'),
('600070', '浙江富润', 'zjfr'),
('600071', '*ST光学', '*STgx'),
('600072', '钢构工程', 'gggc'),
('600073', '上海梅林', 'shml'),
('600074', '保千里', 'bql'),
('600075', '新疆天业', 'xjty'),
('600076', '青鸟华光', 'qnhg'),
('600077', '宋都股份', 'sdgf'),
('600078', '澄星股份', 'cxgf'),
('600079', '人福医药', 'rfyy'),
('600080', '金花股份', 'jhgf'),
('600081', '东风科技', 'dfkj'),
('600082', '海泰发展', 'htfz'),
('600083', '博信股份', 'bxgf'),
('600084', '中葡股份', 'zpgf'),
('600085', '同仁堂', 'trt'),
('600086', '东方金钰', 'dfjy'),
('600088', '中视传媒', 'zscm'),
('600089', '特变电工', 'tbdg'),
('600090', '啤酒花', 'pjh'),
('600091', '*ST明科', '*STmk'),
('600093', '禾嘉股份', 'hjgf'),
('600094', '大名城', 'dmc'),
('600095', '哈高科', 'hgk'),
('600096', '云天化', 'yth'),
('600097', '开创国际', 'kcgj'),
('600098', '广州发展', 'gzfz'),
('600099', '林海股份', 'lhgf'),
('600100', '同方股份', 'tfgf'),
('600101', '明星电力', 'mxdl'),
('600103', '青山纸业', 'qszy'),
('600104', '上汽集团', 'sqjt'),
('600105', '永鼎股份', 'ydgf'),
('600106', '重庆路桥', 'zqlq'),
('600107', '美尔雅', 'mey'),
('600108', '亚盛集团', 'ysjt'),
('600109', '国金证券', 'gjzq'),
('600110', '中科英华', 'zkyh'),
('600111', '北方稀土', 'bfxt'),
('600112', '天成控股', 'tckg'),
('600113', '浙江东日', 'zjdr'),
('600114', '东睦股份', 'dmgf'),
('600115', '东方航空', 'dfhk'),
('600116', '三峡水利', 'sxsl'),
('600117', '西宁特钢', 'xntg'),
('600118', '中国卫星', 'zgwx'),
('600119', '长江投资', 'zjtz'),
('600120', '浙江东方', 'zjdf'),
('600121', '郑州煤电', 'zzmd'),
('600122', '宏图高科', 'htgk'),
('600123', '兰花科创', 'lhkc'),
('600125', '铁龙物流', 'tlwl'),
('600126', '杭钢股份', 'hggf'),
('600127', '金健米业', 'jjmy'),
('600128', '弘业股份', 'hygf'),
('600129', '太极集团', 'tjjt'),
('600130', '波导股份', 'bdgf'),
('600131', '岷江水电', 'mjsd'),
('600132', '重庆啤酒', 'zqpj'),
('600133', '东湖高新', 'dhgx'),
('600135', '乐凯胶片', 'lkjp'),
('600136', '道博股份', 'dbgf'),
('600137', '浪莎股份', 'lsgf'),
('600138', '中青旅', 'zql'),
('600139', '西部资源', 'xbzy'),
('600141', '兴发集团', 'xfjt'),
('600143', '金发科技', 'jfkj'),
('600145', '*ST新亿', '*STxy'),
('600146', '商赢环球', 'syhq'),
('600148', '长春一东', 'zcyd'),
('600149', '廊坊发展', 'lffz'),
('600150', '中国船舶', 'zgcb'),
('600151', '航天机电', 'htjd'),
('600152', '维科精华', 'wkjh'),
('600153', '建发股份', 'jfgf'),
('600155', '宝硕股份', 'bsgf'),
('600156', '华升股份', 'hsgf'),
('600157', '永泰能源', 'ytny'),
('600158', '中体产业', 'ztcy'),
('600159', '大龙地产', 'dldc'),
('600160', '巨化股份', 'jhgf'),
('600161', '天坛生物', 'ttsw'),
('600162', '香江控股', 'xjkg'),
('600163', '*ST闽能', '*STmn'),
('600165', '新日恒力', 'xrhl'),
('600166', '福田汽车', 'ftqc'),
('600167', '联美控股', 'lmkg'),
('600168', '武汉控股', 'whkg'),
('600169', '太原重工', 'tyzg'),
('600170', '上海建工', 'shjg'),
('600171', '上海贝岭', 'shbl'),
('600172', '黄河旋风', 'hhxf'),
('600173', '卧龙地产', 'wldc'),
('600175', '美都能源', 'mdny'),
('600176', '中国巨石', 'zgjs'),
('600177', '雅戈尔', 'yge'),
('600178', '东安动力', 'dadl'),
('600179', '黑化股份', 'hhgf'),
('600180', '瑞茂通', 'rmt'),
('600182', 'S佳通', 'Sjt'),
('600183', '生益科技', 'sykj'),
('600184', '光电股份', 'gdgf'),
('600185', '格力地产', 'gldc'),
('600186', '莲花味精', 'lhwj'),
('600187', '国中水务', 'gzsw'),
('600188', '兖州煤业', 'yzmy'),
('600189', '吉林森工', 'jlsg'),
('600190', '锦州港', 'jzg'),
('600191', '华资实业', 'hzsy'),
('600192', '长城电工', 'zcdg'),
('600193', '创兴资源', 'cxzy'),
('600195', '中牧股份', 'zmgf'),
('600196', '复星医药', 'fxyy'),
('600197', '伊力特', 'ylt'),
('600198', '大唐电信', 'dtdx'),
('600199', '金种子酒', 'jzzj'),
('600200', '江苏吴中', 'jswz'),
('600201', '生物股份', 'swgf'),
('600202', '哈空调', 'hkd'),
('600203', '福日电子', 'frdz'),
('600206', '有研新材', 'yyxc'),
('600207', '安彩高科', 'acgk'),
('600208', '新湖中宝', 'xhzb'),
('600209', '罗顿发展', 'ldfz'),
('600210', '紫江企业', 'zjqy'),
('600211', '西藏药业', 'xzyy'),
('600212', '江泉实业', 'jqsy'),
('600213', '亚星客车', 'yxkc'),
('600215', '长春经开', 'zcjk'),
('600216', '浙江医药', 'zjyy'),
('600217', '*ST秦岭', '*STql'),
('600218', '全柴动力', 'qcdl'),
('600219', '南山铝业', 'nsly'),
('600220', '江苏阳光', 'jsyg'),
('600221', '海南航空', 'hnhk'),
('600222', '太龙药业', 'tlyy'),
('600223', '鲁商置业', 'lszy'),
('600225', '天津松江', 'tjsj'),
('600226', '升华拜克', 'shbk'),
('600227', '赤天化', 'cth'),
('600228', '昌九生化', 'cjsh'),
('600229', '城市传媒', 'cscm'),
('600230', '沧州大化', 'czdh'),
('600231', '凌钢股份', 'lggf'),
('600232', '金鹰股份', 'jygf'),
('600233', '大杨创世', 'dycs'),
('600234', '山水文化', 'sswh'),
('600235', '民丰特纸', 'mftz'),
('600236', '桂冠电力', 'ggdl'),
('600237', '铜峰电子', 'tfdz'),
('600238', '海南椰岛', 'hnyd'),
('600239', '云南城投', 'ynct'),
('600240', '华业资本', 'hyzb'),
('600241', '时代万恒', 'sdwh'),
('600242', '*ST中昌', '*STzc'),
('600243', '青海华鼎', 'qhhd'),
('600246', '万通地产', 'wtdc'),
('600247', '*ST成城', '*STcc'),
('600248', '延长化建', 'yzhj'),
('600249', '两面针', 'lmz'),
('600250', '南纺股份', 'nfgf'),
('600251', '冠农股份',