本人是以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', '冠农股份', 'gngf'),
('600252', '中恒集团', 'zhjt'),
('600255', '鑫科材料', 'xkcl'),
('600256', '广汇能源', 'ghny'),
('600257', '大湖股份', 'dhgf'),
('600258', '首旅酒店', 'sljd'),
('600259', '广晟有色', 'gsys'),
('600260', '凯乐科技', 'klkj'),
('600261', '阳光照明', 'ygzm'),
('600262', '北方股份', 'bfgf'),
('600265', 'ST景谷', 'STjg'),
('600266', '北京城建', 'bjcj'),
('600267', '海正药业', 'hzyy'),
('600268', '国电南自', 'gdnz'),
('600269', '赣粤高速', 'gygs'),
('600270', '外运发展', 'wyfz'),
('600271', '航天信息', 'htxx'),
('600272', '开开实业', 'kksy'),
('600273', '嘉化能源', 'jhny'),
('600275', '武昌鱼', 'wcy'),
('600276', '恒瑞医药', 'hryy'),
('600277', '亿利洁能', 'yljn'),
('600278', '东方创业', 'dfcy'),
('600279', '重庆港九', 'zqgj'),
('600280', '中央商场', 'zysc'),
('600281', '太化股份', 'thgf'),
('600282', '南钢股份', 'nggf'),
('600283', '钱江水利', 'qjsl'),
('600284', '浦东建设', 'pdjs'),
('600285', '羚锐制药', 'lrzy'),
('600287', '江苏舜天', 'jsst'),
('600288', '大恒科技', 'dhkj'),
('600289', '亿阳信通', 'yyxt'),
('600290', '华仪电气', 'hydq'),
('600291', '西水股份', 'xsgf'),
('600292', '中电远达', 'zdyd'),
('600293', '三峡新材', 'sxxc'),
('600295', '鄂尔多斯', 'eeds'),
('600297', '广汇汽车', 'ghqc'),
('600298', '安琪酵母', 'aqjm'),
('600299', '安迪苏', 'ads'),
('600300', '维维股份', 'wwgf'),
('600301', '*ST南化', '*STnh'),
('600302', '标准股份', 'bzgf'),
('600303', '曙光股份', 'sggf'),
('600305', '恒顺醋业', 'hscy'),
('600306', '商业城', 'syc'),
('600307', '酒钢宏兴', 'jghx'),
('600308', '华泰股份', 'htgf'),
('600309', '万华化学', 'whhx'),
('600310', '桂东电力', 'gddl'),
('600311', 'ST荣华', 'STrh'),
('600312', '平高电气', 'pgdq'),
('600313', '农发种业', 'nfzy'),
('600315', '上海家化', 'shjh'),
('600316', '洪都航空', 'hdhk'),
('600317', '营口港', 'ykg'),
('600318', '巢东股份', 'cdgf'),
('600319', '亚星化学', 'yxhx'),
('600320', '振华重工', 'zhzg'),
('600321', '国栋建设', 'gdjs'),
('600322', '天房发展', 'tffz'),
('600323', '瀚蓝环境', 'hlhj'),
('600325', '华发股份', 'hfgf'),
('600326', '西藏天路', 'xztl'),
('600327', '大东方', 'ddf'),
('600328', '兰太实业', 'ltsy'),
('600329', '中新药业', 'zxyy'),
('600330', '天通股份', 'ttgf'),
('600331', '宏达股份', 'hdgf'),
('600332', '白云山', 'bys'),
('600333', '长春燃气', 'zcrq'),
('600335', '国机汽车', 'gjqc'),
('600336', '澳柯玛', 'akm'),
('600337', '美克家居', 'mkjj'),
('600338', '西藏珠峰', 'xzzf'),
('600339', '天利高新', 'tlgx'),
('600340', '华夏幸福', 'hxxf'),
('600343', '航天动力', 'htdl'),
('600345', '长江通信', 'zjtx'),
('600346', '大橡塑', 'dxs'),
('600348', '阳泉煤业', 'yqmy'),
('600350', '山东高速', 'sdgs'),
('600351', '亚宝药业', 'ybyy'),
('600352', '浙江龙盛', 'zjls'),
('600353', '旭光股份', 'xggf'),
('600354', '敦煌种业', 'dhzy'),
('600355', '精伦电子', 'jldz'),
('600356', '恒丰纸业', 'hfzy'),
('600358', '国旅联合', 'gllh'),
('600359', '新农开发', 'xnkf'),
('600360', '华微电子', 'hwdz'),
('600361', '华联综超', 'hlzc'),
('600362', '江西铜业', 'jxty'),
('600363', '联创光电', 'lcgd'),
('600365', '通葡股份', 'tpgf'),
('600366', '宁波韵升', 'nbys'),
('600367', '红星发展', 'hxfz'),
('600368', '五洲交通', 'wzjt'),
('600369', '西南证券', 'xnzq'),
('600370', '三房巷', 'sfx'),
('600371', '万向德农', 'wxdn'),
('600372', '中航电子', 'zhdz'),
('600373', '中文传媒', 'zwcm'),
('600375', '华菱星马', 'hlxm'),
('600376', '首开股份', 'skgf'),
('600377', '宁沪高速', 'nhgs'),
('600378', '天科股份', 'tkgf'),
('600379', '宝光股份', 'bggf'),
('600380', '健康元', 'jky'),
('600381', '青海春天', 'qhct'),
('600382', '广东明珠', 'gdmz'),
('600383', '金地集团', 'jdjt'),
('600385', '山东金泰', 'sdjt'),
('600386', '北巴传媒', 'bbcm'),
('600387', '海越股份', 'hygf'),
('600388', '龙净环保', 'ljhb'),
('600389', '江山股份', 'jsgf'),
('600390', '金瑞科技', 'jrkj'),
('600391', '成发科技', 'cfkj'),
('600392', '盛和资源', 'shzy'),
('600393', '东华实业', 'dhsy'),
('600395', '盘江股份', 'pjgf'),
('600396', '金山股份', 'jsgf'),
('600397', '安源煤业', 'aymy'),
('600398', '海澜之家', 'hlzj'),
('600399', '抚顺特钢', 'fstg'),
('600400', '红豆股份', 'hdgf'),
('600401', '*ST海润', '*SThr'),
('600403', '大有能源', 'dyny'),
('600405', '动力源', 'dly'),
('600406', '国电南瑞', 'gdnr'),
('600408', '*ST安泰', '*STat'),
('600409', '三友化工', 'syhg'),
('600410', '华胜天成', 'hstc'),
('600415', '小商品城', 'xspc'),
('600416', '湘电股份', 'xdgf'),
('600418', '江淮汽车', 'jhqc'),
('600419', '天润乳业', 'trry'),
('600420', '现代制药', 'xdzy'),
('600421', '仰帆控股', 'yfkg'),
('600422', '昆药集团', 'kyjt'),
('600423', '柳化股份', 'lhgf'),
('600425', '青松建化', 'qsjh'),
('600426', '华鲁恒升', 'hlhs'),
('600428', '中远航运', 'zyhy'),
('600429', '三元股份', 'sygf'),
('600432', '吉恩镍业', 'jeny'),
('600433', '冠豪高新', 'ghgx'),
('600435', '北方导航', 'bfdh'),
('600436', '片仔癀', 'pzh'),
('600438', '通威股份', 'twgf'),
('600439', '瑞贝卡', 'rbk'),
('600444', '*ST国通', '*STgt'),
('600446', '金证股份', 'jzgf'),
('600448', '华纺股份', 'hfgf'),
('600449', '宁夏建材', 'nxjc'),
('600452', '涪陵电力', 'fldl'),
('600455', '博通股份', 'btgf'),
('600456', '宝钛股份', 'btgf'),
('600458', '时代新材', 'sdxc'),
('600459', '贵研铂业', 'gyby'),
('600460', '士兰微', 'slw'),
('600461', '洪城水业', 'hcsy'),
('600462', '石岘纸业', 'sxzy'),
('600463', '空港股份', 'kggf'),
('600466', '蓝光发展', 'lgfz'),
('600467', '好当家', 'hdj'),
('600468', '百利电气', 'bldq'),
('600469', '风神股份', 'fsgf'),
('600470', '六国化工', 'lghg'),
('600475', '华光股份', 'hggf'),
('600476', '湘邮科技', 'xykj'),
('600477', '杭萧钢构', 'hxgg'),
('600478', '科力远', 'kly'),
('600479', '千金药业', 'qjyy'),
('600480', '凌云股份', 'lygf'),
('600481', '双良节能', 'sljn'),
('600482', '风帆股份', 'ffgf'),
('600483', '福能股份', 'fngf'),
('600485', '信威集团', 'xwjt'),
('600486', '扬农化工', 'ynhg'),
('600487', '亨通光电', 'htgd'),
('600488', '天药股份', 'tygf'),
('600489', '中金黄金', 'zjhj'),
('600490', '鹏欣资源', 'pxzy'),
('600491', '龙元建设', 'lyjs'),
('600493', '凤竹纺织', 'fzfz'),
('600495', '晋西车轴', 'jxcz'),
('600496', '精工钢构', 'jggg'),
('600497', '驰宏锌锗', 'chxz'),
('600498', '烽火通信', 'fhtx'),
('600499', '科达洁能', 'kdjn'),
('600500', '中化国际', 'zhgj'),
('600501', '航天晨光', 'htcg'),
('600502', '安徽水利', 'ahsl'),
('600503', '华丽家族', 'hljz'),
('600505', '西昌电力', 'xcdl'),
('600506', '香梨股份', 'xlgf'),
('600507', '方大特钢', 'fdtg'),
('600508', '上海能源', 'shny'),
('600509', '天富能源', 'tfny'),
('600510', '黑牡丹', 'hmd'),
('600511', '国药股份', 'gygf'),
('600512', '腾达建设', 'tdjs'),
('600513', '联环药业', 'lhyy'),
('600515', '海岛建设', 'hdjs'),
('600516', '方大炭素', 'fdts'),
('600517', '置信电气', 'zxdq'),
('600518', '康美药业', 'kmyy'),
('600519', '贵州茅台', 'gzmt'),
('600520', '中发科技', 'zfkj'),
('600521', '华海药业', 'hhyy'),
('600522', '中天科技', 'ztkj'),
('600523', '贵航股份', 'ghgf'),
('600525', '长园集团', 'zyjt'),
('600526', '菲达环保', 'fdhb'),
('600527', '江南高纤', 'jngx'),
('600528', '中铁二局', 'ztej'),
('600529', '山东药玻', 'sdyb'),
('600530', '交大昂立', 'jdal'),
('600531', '豫光金铅', 'ygjq'),
('600532', '宏达矿业', 'hdky'),
('600533', '栖霞建设', 'qxjs'),
('600535', '天士力', 'tsl'),
('600536', '中国软件', 'zgrj'),
('600537', '亿晶光电', 'yjgd'),
('600538', '国发股份', 'gfgf'),
('600539', '*ST狮头', '*STst'),
('600540', '新赛股份', 'xsgf'),
('600543', '莫高股份', 'mggf'),
('600545', '新疆城建', 'xjcj'),
('600546', '山煤国际', 'smgj'),
('600547', '山东黄金', 'sdhj'),
('600548', '深高速', 'sgs'),
('600549', '厦门钨业', 'smwy'),
('600550', '保变电气', 'bbdq'),
('600551', '时代出版', 'sdcb'),
('600552', '方兴科技', 'fxkj'),
('600555', '九龙山', 'jls'),
('600556', '慧球科技', 'hqkj'),
('600557', '康缘药业', 'kyyy'),
('600558', '大西洋', 'dxy'),
('600559', '老白干酒', 'lbgj'),
('600560', '金自天正', 'jztz'),
('600561', '江西长运', 'jxzy'),
('600562', '国睿科技', 'grkj'),
('600563', '法拉电子', 'fldz'),
('600565', '迪马股份', 'dmgf'),
('600566', '济川药业', 'jcyy'),
('600567', '山鹰纸业', 'syzy'),
('600568', '中珠控股', 'zzkg'),
('600569', '安阳钢铁', 'aygt'),
('600570', '恒生电子', 'hsdz'),
('600571', '信雅达', 'xyd'),
('600572', '康恩贝', 'keb'),
('600573', '惠泉啤酒', 'hqpj'),
('600575', '皖江物流', 'wjwl'),
('600576', '万家文化', 'wjwh'),
('600577', '精达股份', 'jdgf'),
('600578', '京能电力', 'jndl'),
('600579', '天华院', 'thy'),
('600580', '卧龙电气', 'wldq'),
('600581', '八一钢铁', 'bygt'),
('600582', '天地科技', 'tdkj'),
('600583', '海油工程', 'hygc'),
('600584', '长电科技', 'zdkj'),
('600585', '海螺水泥', 'hlsn'),
('600586', '金晶科技', 'jjkj'),
('600587', '新华医疗', 'xhyl'),
('600588', '用友网络', 'yywl'),
('600589', '广东榕泰', 'gdrt'),
('600590', '泰豪科技', 'thkj'),
('600592', '龙溪股份', 'lxgf'),
('600593', '大连圣亚', 'dlsy'),
('600594', '益佰制药', 'ybzy'),
('600595', '中孚实业', 'zfsy'),
('600596', '新安股份', 'xagf'),
('600597', '光明乳业', 'gmry'),
('600598', '北大荒', 'bdh'),
('600599', '熊猫金控', 'xmjk'),
('600600', '青岛啤酒', 'qdpj'),
('600601', '方正科技', 'fzkj'),
('600602', '仪电电子', 'yddz'),
('600603', '大洲兴业', 'dzxy'),
('600604', '市北高新', 'sbgx'),
('600605', '汇通能源', 'htny'),
('600606', '绿地控股', 'ldkg'),
('600608', '*ST沪科', '*SThk'),
('600609', '金杯汽车', 'jbqc'),
('600610', '中毅达', 'zyd'),
('600611', '大众交通', 'dzjt'),
('600612', '老凤祥', 'lfx'),
('600613', '神奇制药', 'sqzy'),
('600614', '鼎立股份', 'dlgf'),
('600615', '丰华股份', 'fhgf'),
('600616', '金枫酒业', 'jfjy'),
('600617', '国新能源', 'gxny'),
('600618', '氯碱化工', 'ljhg'),
('600619', '海立股份', 'hlgf'),
('600620', '天宸股份', 'tcgf'),
('600621', '华鑫股份', 'hxgf'),
('600622', '嘉宝集团', 'jbjt'),
('600623', '双钱股份', 'sqgf'),
('600624', '复旦复华', 'fdfh'),
('600626', '申达股份', 'sdgf'),
('600628', '新世界', 'xsj'),
('600629', '华建集团', 'hjjt'),
('600630', '龙头股份', 'ltgf'),
('600633', '浙报传媒', 'zbcm'),
('600634', '中技控股', 'zjkg'),
('600635', '大众公用', 'dzgy'),
('600636', '三爱富', 'saf'),
('600637', '东方明珠', 'dfmz'),
('600638', '新黄浦', 'xhp'),
('600639', '浦东金桥', 'pdjq'),
('600640', '号百控股', 'hbkg'),
('600641', '万业企业', 'wyqy'),
('600642', '申能股份', 'sngf'),
('600643', '爱建集团', 'ajjt'),
('600644', '*ST乐电', '*STld'),
('600645', '中源协和', 'zyxh'),
('600647', '同达创业', 'tdcy'),
('600648', '外高桥', 'wgq'),
('600649', '城投控股', 'ctkg'),
('600650', '锦江投资', 'jjtz'),
('600651', '飞乐音响', 'flyx'),
('600652', '游久游戏', 'yjyx'),
('600653', '申华控股', 'shkg'),
('600654', '中安消', 'zax'),
('600655', '豫园商城', 'yysc'),
('600657', '信达地产', 'xddc'),
('600658', '电子城', 'dzc'),
('600660', '福耀玻璃', 'fybl'),
('600661', '新南洋', 'xny'),
('600662', '强生控股', 'qskg'),
('600663', '陆家嘴', 'ljz'),
('600664', '哈药股份', 'hygf'),
('600665', '天地源', 'tdy'),
('600666', '奥瑞德', 'ard'),
('600667', '太极实业', 'tjsy'),
('600668', '尖峰集团', 'jfjt'),
('600671', '天目药业', 'tmyy'),
('600673', '东阳光科', 'dygk'),
('600674', '川投能源', 'ctny'),
('600675', '中华企业', 'zhqy'),
('600676', '交运股份', 'jygf'),
('600677', '航天通信', 'httx'),
('600678', '四川金顶', 'scjd'),
('600679', '金山开发', 'jskf'),
('600680', '上海普天', 'shpt'),
('600681', '万鸿集团', 'whjt'),
('600682', '南京新百', 'njxb'),
('600683', '京投银泰', 'jtyt'),
('600684', '珠江实业', 'zjsy'),
('600685', '中船防务', 'zcfw'),
('600686', '金龙汽车', 'jlqc'),
('600687', '刚泰控股', 'gtkg'),
('600688', '上海石化', 'shsh'),
('600689', '上海三毛', 'shsm'),
('600690', '青岛海尔', 'qdhe'),
('600691', '*ST阳化', '*STyh'),
('600692', '亚通股份', 'ytgf'),
('600693', '东百集团', 'dbjt'),
('600694', '大商股份', 'dsgf'),
('600695', '绿庭投资', 'lttz'),
('600696', '匹凸匹', 'ptp'),
('600697', '欧亚集团', 'oyjt'),
('600698', '湖南天雁', 'hnty'),
('600699', '均胜电子', 'jsdz'),
('600701', '工大高新', 'gdgx'),
('600702', '沱牌舍得', 'tpsd'),
('600703', '三安光电', 'sagd'),
('600704', '物产中大', 'wczd'),
('600705', '中航资本', 'zhzb'),
('600706', '曲江文旅', 'qjwl'),
('600707', '彩虹股份', 'chgf'),
('600708', '光明地产', 'gmdc'),
('600710', '*ST常林', '*STcl'),
('600711', '盛屯矿业', 'stky'),
('600712', '南宁百货', 'nnbh'),
('600713', '南京医药', 'njyy'),
('600714', '金瑞矿业', 'jrky'),
('600715', '*ST松辽', '*STsl'),
('600716', '凤凰股份', 'fhgf'),
('600717', '天津港', 'tjg'),
('600718', '东软集团', 'drjt'),
('600719', '大连热电', 'dlrd'),
('600720', '祁连山', 'qls'),
('600721', '百花村', 'bhc'),
('600722', '*ST金化', '*STjh'),
('600723', '首商股份', 'ssgf'),
('600724', '宁波富达', 'nbfd'),
('600725', '云维股份', 'ywgf'),
('600726', '华电能源', 'hdny'),
('600727', '鲁北化工', 'lbhg'),
('600728', '佳都科技', 'jdkj'),
('600729', '重庆百货', 'zqbh'),
('600730', '中国高科', 'zggk'),
('600731', '湖南海利', 'hnhl'),
('600732', '*ST新梅', '*STxm'),
('600733', 'S前锋', 'Sqf'),
('600734', '实达集团', 'sdjt'),
('600735', '新华锦', 'xhj'),
('600736', '苏州高新', 'szgx'),
('600737', '中粮屯河', 'zlth'),
('600738', '兰州民百', 'lzmb'),
('600739', '辽宁成大', 'lncd'),
('600740', '山西焦化', 'sxjh'),
('600741', '华域汽车', 'hyqc'),
('600742', '一汽富维', 'yqfw'),
('600743', '华远地产', 'hydc'),
('600744', '华银电力', 'hydl'),
('600745', '中茵股份', 'zygf'),
('600746', '江苏索普', 'jssp'),
('600747', '大连控股', 'dlkg'),
('600748', '上实发展', 'ssfz'),
('600749', '西藏旅游', 'xzly'),
('600750', '江中药业', 'jzyy'),
('600751', '天海投资', 'thtz'),
('600753', '东方银星', 'dfyx'),
('600754', '锦江股份', 'jjgf'),
('600755', '厦门国贸', 'smgm'),
('600756', '浪潮软件', 'lcrj'),
('600757', '长江传媒', 'zjcm'),
('600758', '红阳能源', 'hyny'),
('600759', '洲际油气', 'zjyq'),
('600760', '中航黑豹', 'zhhb'),
('600761', '安徽合力', 'ahhl'),
('600763', '通策医疗', 'tcyl'),
('600764', '中电广通', 'zdgt'),
('600765', '中航重机', 'zhzj'),
('600766', '园城黄金', 'ychj'),
('600767', '运盛医疗', 'ysyl'),
('600768', '宁波富邦', 'nbfb'),
('600769', '祥龙电业', 'xldy'),
('600770', '综艺股份', 'zygf'),
('600771', '广誉远', 'gyy'),
('600773', '西藏城投', 'xzct'),
('600774', '汉商集团', 'hsjt'),
('600775', '南京熊猫', 'njxm'),
('600776', '东方通信', 'dftx'),
('600777', '新潮实业', 'xcsy'),
('600778', '友好集团', 'yhjt'),
('600779', '*ST水井', '*STsj'),
('600780', '通宝能源', 'tbny'),
('600781', '辅仁药业', 'fryy'),
('600782', '新钢股份', 'xggf'),
('600783', '鲁信创投', 'lxct'),
('600784', '鲁银投资', 'lytz'),
('600785', '新华百货', 'xhbh'),
('600787', '中储股份', 'zcgf'),
('600789', '鲁抗医药', 'lkyy'),
('600790', '轻纺城', 'qfc'),
('600791', '京能置业', 'jnzy'),
('600792', '云煤能源', 'ymny'),
('600793', 'ST宜纸', 'STyz'),
('600794', '保税科技', 'bskj'),
('600795', '国电电力', 'gddl'),
('600796', '钱江生化', 'qjsh'),
('600797', '浙大网新', 'zdwx'),
('600798', '宁波海运', 'nbhy'),
('600800', '天津磁卡', 'tjck'),
('600801', '华新水泥', 'hxsn'),
('600802', '福建水泥', 'fjsn'),
('600803', '新奥股份', 'xagf'),
('600804', '鹏博士', 'pbs'),
('600805', '悦达投资', 'ydtz'),
('600806', '昆明机床', 'kmjc'),
('600807', '天业股份', 'tygf'),
('600808', '马钢股份', 'mggf'),
('600809', '山西汾酒', 'sxfj'),
('600810', '神马股份', 'smgf'),
('600811', '东方集团', 'dfjt'),
('600812', '华北制药', 'hbzy'),
('600814', '杭州解百', 'hzjb'),
('600815', '厦工股份', 'sggf'),
('600816', '安信信托', 'axxt'),
('600817', 'ST宏盛', 'SThs'),
('600818', '中路股份', 'zlgf'),
('600819', '耀皮玻璃', 'ypbl'),
('600820', '隧道股份', 'sdgf'),
('600821', '津劝业', 'jqy'),
('600822', '上海物贸', 'shwm'),
('600823', '世茂股份', 'smgf'),
('600824', '益民集团', 'ymjt'),
('600825', '新华传媒', 'xhcm'),
('600826', '兰生股份', 'lsgf'),
('600827', '百联股份', 'blgf'),
('600828', '成商集团', 'csjt'),
('600829', '人民同泰', 'rmtt'),
('600830', '香溢融通', 'xyrt'),
('600831', '广电网络', 'gdwl'),
('600833', '第一医药', 'dyyy'),
('600834', '申通地铁', 'stdt'),
('600835', '上海机电', 'shjd'),
('600836', '界龙实业', 'jlsy'),
('600837', '海通证券', 'htzq'),
('600838', '上海九百', 'shjb'),
('600839', '四川长虹', 'sczh'),
('600841', '上柴股份', 'scgf'),
('600843', '上工申贝', 'sgsb'),
('600844', '丹化科技', 'dhkj'),
('600845', '宝信软件', 'bxrj'),
('600846', '同济科技', 'tjkj'),
('600847', '万里股份', 'wlgf'),
('600848', '上海临港', 'shlg'),
('600850', '华东电脑', 'hddn'),
('600851', '海欣股份', 'hxgf'),
('600853', '龙建股份', 'ljgf'),
('600854', '春兰股份', 'clgf'),
('600855', '航天长峰', 'htzf'),
('600856', '中天能源', 'ztny'),
('600857', '宁波中百', 'nbzb'),
('600858', '银座股份', 'yzgf'),
('600859', '王府井', 'wfj'),
('600860', '京城股份', 'jcgf'),
('600861', '北京城乡', 'bjcx'),
('600862', '南通科技', 'ntkj'),
('600863', '内蒙华电', 'nmhd'),
('600864', '哈投股份', 'htgf'),
('600865', '百大集团', 'bdjt'),
('600866', '星湖科技', 'xhkj'),
('600867', '通化东宝', 'thdb'),
('600868', '梅雁吉祥', 'myjx'),
('600869', '智慧能源', 'zhny'),
('600870', '*ST厦华', '*STsh'),
('600871', '石化油服', 'shyf'),
('600872', '中炬高新', 'zjgx'),
('600873', '梅花生物', 'mhsw'),
('600874', '创业环保', 'cyhb'),
('600875', '东方电气', 'dfdq'),
('600876', '洛阳玻璃', 'lybl'),
('600877', '中国嘉陵', 'zgjl'),
('600879', '航天电子', 'htdz'),
('600880', '博瑞传播', 'brcb'),
('600881', '亚泰集团', 'ytjt'),
('600882', '华联矿业', 'hlky'),
('600883', '博闻科技', 'bwkj'),
('600884', '杉杉股份', 'ssgf'),
('600885', '宏发股份', 'hfgf'),
('600886', '国投电力', 'gtdl'),
('600887', '伊利股份', 'ylgf'),
('600888', '新疆众和', 'xjzh'),
('600889', '南京化纤', 'njhx'),
('600890', '中房股份', 'zfgf'),
('600891', '秋林集团', 'qljt'),
('600892', '宝诚股份', 'bcgf'),
('600893', '中航动力', 'zhdl'),
('600894', '广日股份', 'grgf'),
('600895', '张江高科', 'zjgk'),
('600896', '中海海盛', 'zhhs'),
('600897', '厦门空港', 'smkg'),
('600898', '三联商社', 'slss'),
('600900', '长江电力', 'zjdl'),
('600917', '重庆燃气', 'zqrq'),
('600958', '东方证券', 'dfzq'),
('600959', '江苏有线', 'jsyx'),
('600960', '渤海活塞', 'bhhs'),
('600961', '株冶集团', 'zyjt'),
('600962', '*ST中鲁', '*STzl'),
('600963', '岳阳林纸', 'yylz'),
('600965', '福成五丰', 'fcwf'),
('600966', '博汇纸业', 'bhzy'),
('600967', '北方创业', 'bfcy'),
('600969', '郴电国际', 'cdgj'),
('600970', '中材国际', 'zcgj'),
('600971', '恒源煤电', 'hymd'),
('600973', '宝胜股份', 'bsgf'),
('600975', '新五丰', 'xwf'),
('600976', '健民集团', 'jmjt'),
('600978', '宜华木业', 'yhmy'),
('600979', '广安爱众', 'gaaz'),
('600980', '北矿磁材', 'bkcc'),
('600981', '汇鸿集团', 'hhjt'),
('600982', '宁波热电', 'nbrd'),
('600983', '惠而浦', 'hep'),
('600984', '*ST建机', '*STjj'),
('600985', '雷鸣科化', 'lmkh'),
('600986', '科达股份', 'kdgf'),
('600987', '航民股份', 'hmgf'),
('600988', '赤峰黄金', 'cfhj'),
('600990', '四创电子', 'scdz'),
('600992', '贵绳股份', 'gsgf'),
('600993', '马应龙', 'myl'),
('600995', '文山电力', 'wsdl'),
('600997', '开滦股份', 'klgf'),
('600998', '九州通', 'jzt'),
('600999', '招商证券', 'zszq'),
('601000', '唐山港', 'tsg'),
('601001', '大同煤业', 'dtmy'),
('601002', '晋亿实业', 'jysy'),
('601003', '柳钢股份', 'lggf'),
('601005', '重庆钢铁', 'zqgt'),
('601006', '大秦铁路', 'dqtl'),
('601007', '金陵饭店', 'jlfd'),
('601008', '连云港', 'lyg'),
('601009', '南京银行', 'njyx'),
('601010', '文峰股份', 'wfgf'),
('601011', '宝泰隆', 'btl'),
('601012', '隆基股份', 'ljgf'),
('601015', '陕西黑猫', 'sxhm'),
('601016', '节能风电', 'jnfd'),
('601018', '宁波港', 'nbg'),
('601021', '春秋航空', 'cqhk'),
('601028', '玉龙股份', 'ylgf'),
('601038', '一拖股份', 'ytgf'),
('601058', '赛轮金宇', 'sljy'),
('601069', '西部黄金', 'xbhj'),
('601088', '中国神华', 'zgsh'),
('601098', '中南传媒', 'zncm'),
('601099', '太平洋', 'tpy'),
('601100', '恒立油缸', 'hlyg'),
('601101', '昊华能源', 'hhny'),
('601106', '中国一重', 'zgyz'),
('601107', '四川成渝', 'sccy'),
('601111', '中国国航', 'zggh'),
('601113', '华鼎股份', 'hdgf'),
('601116', '三江购物', 'sjgw'),
('601117', '中国化学', 'zghx'),
('601118', '海南橡胶', 'hnxj'),
('601126', '四方股份', 'sfgf'),
('601137', '博威合金', 'bwhj'),
('601139', '深圳燃气', 'szrq'),
('601155', '新城控股', 'xckg'),
('601158', '重庆水务', 'zqsw'),
('601166', '兴业银行', 'xyyx'),
('601168', '西部矿业', 'xbky'),
('601169', '北京银行', 'bjyx'),
('601177', '杭齿前进', 'hcqj'),
('601179', '中国西电', 'zgxd'),
('601186', '中国铁建', 'zgtj'),
('601188', '龙江交通', 'ljjt'),
('601198', '东兴证券', 'dxzq'),
('601199', '江南水务', 'jnsw'),
('601208', '东材科技', 'dckj'),
('601211', '国泰君安', 'gtja'),
('601216', '君正集团', 'jzjt'),
('601218', '吉鑫科技', 'jxkj'),
('601222', '林洋能源', 'lyny'),
('601225', '陕西煤业', 'sxmy'),
('601226', '华电重工', 'hdzg'),
('601231', '环旭电子', 'hxdz'),
('601233', '桐昆股份', 'tkgf'),
('601238', '广汽集团', 'gqjt'),
('601258', '庞大集团', 'pdjt'),
('601288', '农业银行', 'nyyx'),
('601311', '骆驼股份', 'ltgf'),
('601313', '江南嘉捷', 'jnjj'),
('601318', '中国平安', 'zgpa'),
('601328', '交通银行', 'jtyx'),
('601333', '广深铁路', 'gstl'),
('601336', '新华保险', 'xhbx'),
('601339', '百隆东方', 'bldf'),
('601368', '绿城水务', 'lcsw'),
('601369', '陕鼓动力', 'sgdl'),
('601377', '兴业证券', 'xyzq'),
('601388', '怡球资源', 'yqzy'),
('601390', '中国中铁', 'zgzt'),
('601398', '工商银行', 'gsyx'),
('601515', '东风股份', 'dfgf'),
('601518', '吉林高速', 'jlgs'),
('601519', '大智慧', 'dzh'),
('601555', '东吴证券', 'dwzq'),
('601558', '华锐风电', 'hrfd'),
('601566', '九牧王', 'jmw'),
('601567', '三星医疗', 'sxyl'),
('601579', '会稽山', 'hjs'),
('601588', '北辰实业', 'bcsy'),
('601599', '鹿港科技', 'lgkj'),
('601600', '中国铝业', 'zgly'),
('601601', '中国太保', 'zgtb'),
('601607', '上海医药', 'shyy'),
('601608', '中信重工', 'zxzg'),
('601616', '广电电气', 'gddq'),
('601618', '中国中冶', 'zgzy'),
('601628', '中国人寿', 'zgrs'),
('601633', '长城汽车', 'zcqc'),
('601636', '旗滨集团', 'qbjt'),
('601666', '平煤股份', 'pmgf'),
('601668', '中国建筑', 'zgjz'),
('601669', '中国电建', 'zgdj'),
('601677', '明泰铝业', 'mtly'),
('601678', '滨化股份', 'bhgf'),
('601688', '华泰证券', 'htzq'),
('601689', '拓普集团', 'tpjt'),
('601699', '潞安环能', 'lahn'),
('601700', '风范股份', 'ffgf'),
('601717', '郑煤机', 'zmj'),
('601718', '际华集团', 'jhjt'),
('601727', '上海电气', 'shdq'),
('601766', '中国中车', 'zgzc'),
('601777', '力帆股份', 'lfgf'),
('601788', '光大证券', 'gdzq'),
('601789', '宁波建工', 'nbjg'),
('601798', '蓝科高新', 'lkgx'),
('601799', '星宇股份', 'xygf'),
('601800', '中国交建', 'zgjj'),
('601801', '皖新传媒', 'wxcm'),
('601808', '中海油服', 'zhyf'),
('601818', '光大银行', 'gdyx'),
('601857', '中国石油', 'zgsy'),
('601866', '中海集运', 'zhjy'),
('601872', '招商轮船', 'zslc'),
('601877', '正泰电器', 'ztdq'),
('601880', '大连港', 'dlg'),
('601886', '江河创建', 'jhcj'),
('601888', '中国国旅', 'zggl'),
('601890', '亚星锚链', 'yxml'),
('601898', '中煤能源', 'zmny'),
('601899', '紫金矿业', 'zjky'),
('601901', '方正证券', 'fzzq'),
('601908', '京运通', 'jyt'),
('601918', '国投新集', 'gtxj'),
('601919', '中国远洋', 'zgyy'),
('601928', '凤凰传媒', 'fhcm'),
('601929', '吉视传媒', 'jscm'),
('601933', '永辉超市', 'yhcs'),
('601939', '建设银行', 'jsyx'),
('601958', '金钼股份', 'jmgf'),
('601965', '中国汽研', 'zgqy'),
('601968', '宝钢包装', 'bgbz'),
('601969', '海南矿业', 'hnky'),
('601985', '中国核电', 'zghd'),
('601988', '中国银行', 'zgyx'),
('601989', '中国重工', 'zgzg'),
('601991', '大唐发电', 'dtfd'),
('601992', '金隅股份', 'jygf'),
('601996', '丰林集团', 'fljt'),
('601998', '中信银行', 'zxyx'),
('601999', '出版传媒', 'cbcm'),
('603000', '人民网', 'rmw'),
('603001', '奥康国际', 'akgj'),
('603002', '宏昌电子', 'hcdz'),
('603003', '龙宇燃油', 'lyry'),
('603005', '晶方科技', 'jfkj'),
('603006', '联明股份', 'lmgf'),
('603008', '喜临门', 'xlm'),
('603009', '北特科技', 'btkj'),
('603010', '万盛股份', 'wsgf'),
('603011', '合锻股份', 'hdgf'),
('603012', '创力集团', 'cljt'),
('603015', '弘讯科技', 'hxkj'),
('603017', '中衡设计', 'zhsj'),
('603018', '设计股份', 'sjgf'),
('603019', '中科曙光', 'zksg'),
('603020', '爱普股份', 'apgf'),
('603021', '山东华鹏', 'sdhp'),
('603022', '新通联', 'xtl'),
('603023', '威帝股份', 'wdgf'),
('603025', '大豪科技', 'dhkj'),
('603026', '石大胜华', 'sdsh'),
('603030', '全筑股份', 'qzgf'),
('603066', '音飞储存', 'yfcc'),
('603077', '和邦生物', 'hbsw'),
('603085', '天成自控', 'tczk'),
('603088', '宁波精达', 'nbjd'),
('603099', '长白山', 'zbs'),
('603100', '川仪股份', 'cygf'),
('603108', '润达医疗', 'rdyl'),
('603111', '康尼机电', 'knjd'),
('603116', '红蜻蜓', 'hqt'),
('603117', '万林股份', 'wlgf'),
('603118', '共进股份', 'gjgf'),
('603123', '翠微股份', 'cwgf'),
('603126', '中材节能', 'zcjn'),
('603128', '华贸物流', 'hmwl'),
('603158', '腾龙股份', 'tlgf'),
('603166', '福达股份', 'fdgf'),
('603167', '渤海轮渡', 'bhld'),
('603168', '莎普爱思', 'spas'),
('603169', '兰石重装', 'lszz'),
('603188', '亚邦股份', 'ybgf'),
('603198', '迎驾贡酒', 'yjgj'),
('603199', '九华旅游', 'jhly'),
('603222', '济民制药', 'jmzy'),
('603223', '恒通股份', 'htgf'),
('603227', '雪峰科技', 'xfkj'),
('603268', '松发股份', 'sfgf'),
('603288', '海天味业', 'htwy'),
('603299', '井神股份', 'jsgf'),
('603300', '华铁科技', 'htkj'),
('603306', '华懋科技', 'hmkj'),
('603308', '应流股份', 'ylgf'),
('603309', '维力医疗', 'wlyl'),
('603311', '金海环境', 'jhhj'),
('603315', '福鞍股份', 'fagf'),
('603318', '派思股份', 'psgf'),
('603328', '依顿电子', 'yddz'),
('603333', '明星电缆', 'mxdl'),
('603338', '浙江鼎力', 'zjdl'),
('603355', '莱克电气', 'lkdq'),
('603366', '日出东方', 'rcdf'),
('603368', '柳州医药', 'lzyy'),
('603369', '今世缘', 'jsy'),
('603398', '邦宝益智', 'bbyz'),
('603399', '新华龙', 'xhl'),
('603456', '九洲药业', 'jzyy'),
('603508', '思维列控', 'swlk'),
('603518', '维格娜丝', 'wgns'),
('603519', '立霸股份', 'lbgf'),
('603555', '贵人鸟', 'grn'),
('603558', '健盛集团', 'jsjt'),
('603566', '普莱柯', 'plk'),
('603567', '珍宝岛', 'zbd'),
('603568', '伟明环保', 'wmhb'),
('603588', '高能环境', 'gnhj'),
('603589', '口子窖', 'kzj'),
('603598', '引力传媒', 'ylcm'),
('603599', '广信股份', 'gxgf'),
('603600', '永艺股份', 'yygf'),
('603601', '再升科技', 'zskj'),
('603606', '东方电缆', 'dfdl'),
('603609', '禾丰牧业', 'hfmy'),
('603611', '诺力股份', 'nlgf'),
('603616', '韩建河山', 'hjhs'),
('603618', '杭电股份', 'hdgf'),
('603636', '南威软件', 'nwrj'),
('603669', '灵康药业', 'lkyy'),
('603678', '火炬电子', 'hjdz'),
('603686', '龙马环卫', 'lmhw'),
('603688', '石英股份', 'sygf'),
('603696', '安记食品', 'ajsp'),
('603698', '航天工程', 'htgc'),
('603699', '纽威股份', 'nwgf'),
('603703', '盛洋科技', 'sykj'),
('603718', '海利生物', 'hlsw'),
('603729', '龙韵股份', 'lygf'),
('603766', '隆鑫通用', 'lxty'),
('603778', '乾景园林', 'qjyl'),
('603788', '宁波高发', 'nbgf'),
('603789', '星光农机', 'xgnj'),
('603799', '华友钴业', 'hygy'),
('603800', '道森股份', 'dsgf'),
('603806', '福斯特', 'fst'),
('603808', '歌力思', 'gls'),
('603818', '曲美家居', 'qmjj'),
('603828', '柯利达', 'kld'),
('603838', '四通股份', 'stgf'),
('603866', '桃李面包', 'tlmb'),
('603869', '北部湾旅', 'bbwl'),
('603883', '老百姓', 'lbx'),
('603885', '吉祥航空', 'jxhk'),
('603889', '新澳股份', 'xagf'),
('603898', '好莱客', 'hlk'),
('603899', '晨光文具', 'cgwj'),
('603901', '永创智能', 'yczn'),
('603918', '金桥信息', 'jqxx'),
('603936', '博敏电子', 'bmdz'),
('603939', '益丰药房', 'yfyf'),
('603968', '醋化股份', 'chgf'),
('603969', '银龙股份', 'ylgf'),
('603979', '金诚信', 'jcx'),
('603988', '中电电机', 'zddj'),
('603989', '艾华集团', 'ahjt'),
('603993', '洛阳钼业', 'lymy'),
('603996', '中新科技', 'zxkj'),
('603997', '继峰股份', 'jfgf'),
('603998', '方盛制药', 'fszy'),
('603999', '读者传媒', 'dzcm'),
('900901', '仪电B股', 'ydBg'),
('900902', '市北B股', 'sbBg'),
('900903', '大众B股', 'dzBg'),
('900904', '神奇B股', 'sqBg'),
('900905', '老凤祥B', 'lfxB'),
('900906', '中毅达B', 'zydB'),
('900907', '鼎立B股', 'dlBg'),
('900908', '氯碱B股', 'ljBg'),
('900909', '双钱B股', 'sqBg'),
('900910', '海立B股', 'hlBg'),
('900911', '金桥B股', 'jqBg'),
('900912', '外高B股', 'wgBg'),
('900913', '国新B股', 'gxBg'),
('900914', '锦投B股', 'jtBg'),
('900915', '中路B股', 'zlBg'),
('900916', '金山B股', 'jsBg'),
('900917', '海欣B股', 'hxBg'),
('900918', '耀皮B股', 'ypBg'),
('900919', '绿庭B股', 'ltBg'),
('900920', '上柴B股', 'scBg'),
('900921', '丹科B股', 'dkBg'),
('900922', '三毛B股', 'smBg'),
('900923', '百联B股', 'blBg'),
('900924', '上工B股', 'sgBg'),
('900925', '机电B股', 'jdBg'),
('900926', '宝信B', 'bxB'),
('900927', '物贸B股', 'wmBg'),
('900928', '临港B股', 'lgBg'),
('900929', '锦旅B股', 'jlBg'),
('900930', '沪普天B', 'hptB'),
('900932', '陆家B股', 'ljBg'),
('900933', '华新B股', 'hxBg'),
('900934', '锦江B股', 'jjBg'),
('900935', '阳晨B股', 'ycBg'),
('900936', '鄂资B股', 'ezBg'),
('900937', '华电B股', 'hdBg'),
('900938', '天海B', 'thB'),
('900939', '汇丽B', 'hlB'),
('900940', '大名城B', 'dmcB'),
('900941', '东信B股', 'dxBg'),
('900942', '黄山B股', 'hsBg'),
('900943', '开开B股', 'kkBg'),
('900945', '海航B股', 'hhBg'),
('900946', '天雁B股', 'tyBg'),
('900947', '振华B股', 'zhBg'),
('900948', '伊泰B股', 'ytBg'),
('900950', '新城B股', 'xcBg'),
('900951', '大化B股', 'dhBg'),
('900952', '锦港B股', 'jgBg'),
('900953', '凯马B', 'kmB'),
('900955', '九龙山B', 'jlsB'),
('900956', '东贝B股', 'dbBg'),
('900957', '凌云B股', 'lyBg')]
# 2. get history data
class HistoryInfo():
def __init__(self, history_data, product, cur_year, cur_month):
self.history_data = history_data
self.product = product
self.cur_year= cur_year
self.cur_month = cur_month
class ExecuteGet(threading.Thread):
def __init__(self, obj):
threading.Thread.__init__(self)
self.obj = obj
def run(self):
while 1:
self.obj.cond_get.acquire()
while len(self.obj.stack)==0:
if self.obj.th_stop==True:
self.obj.cond_put.notifyAll()
self.obj.cond_get.release()
exit(0)
self.obj.cond_get.wait()
history_info = self.obj.stack.pop()
self.obj.cond_put.notifyAll()
self.obj.cond_get.release()
self.get_product_history(history_info.history_data, history_info.product, \
history_info.cur_year, history_info.cur_month)
def get_product_history(self, history_data, product, cur_year, cur_month):
url_pattern = 'http://money.finance.sina.com.cn/corp/go.php/vMS_MarketHistory/stockid/603299.phtml?year=2015&jidu=4'
headers_str = '''Host: money.finance.sina.com.cn
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Firefox/38.0
'''
headers_list = re.findall(r'(.*?):(.*)', headers_str)
headers = {}
for item in headers_list:
headers[item[0]] = item[1]
map_month_to_jidu = {
1 : 1, 2 : 1, 3 : 1, 4 : 2, 5 : 2, 6 : 2,
7 : 3, 8 : 3, 9 : 3, 10 : 4, 11 : 4, 12 : 4
}
for i in range(0, 10):
# get url
month = cur_month - 3 * i
secs = time.mktime((cur_year, month, 1, 0, 0, 0, 0, 0, 0))
year = time.localtime(secs).tm_year
jidu = map_month_to_jidu[time.localtime(secs).tm_mon]
url = re.sub(r'stockid.*4', 'stockid/%s.phtml?year=%d&jidu=%d' % (product, year, jidu), url_pattern)
url_err = url + "\n"
sys.stderr.write(url_err)
# get html
times = 10
while times>0:
try:
html = requests.get(url=url, headers=headers, timeout=16)
break
except requests.ConnectionError as e:
times -= 1
if html.encoding == 'ISO-8859-1':
encodings = requests.utils.get_encodings_from_content(html.text)
if encodings:
html.encoding = encodings[0]
else:
html.encoding = html.apparent_encoding
# edit data
soup = BeautifulSoup(html.text, 'html.parser')
soup = soup.find(id="FundHoldSharesTable")
if (soup == None):
continue
data_text = soup.get_text()
data_text = re.sub(r'[ \t]+', r'', data_text)
data_text = re.sub(r'[^\d\.\n-]', r'', data_text)
data_list = re.findall(r'(\d.*?)\n', data_text)
if data_list:
assert data_list[0]==product
for i in range(1, len(data_list), 7):
history_data[product].append((data_list[i], data_list[i+1],
data_list[i+2], data_list[i+3],
data_list[i+4], data_list[i+5],
data_list[i+6]))
class GetProductHistory(object):
stack = []
lock = threading.Lock()
cond_put = threading.Condition(lock)
cond_get = threading.Condition(lock)
th = []
thnum = 8
def start(self):
self.th_stop = False
self.stack = []
self.th = []
for i in range(self.thnum):
th = ExecuteGet(self)
th.start()
self.th.append(th)
def put(self, history_data, product, cur_year, cur_month):
history_info = HistoryInfo(history_data, product, cur_year, cur_month)
self.cond_put.acquire()
while len(self.stack) == self.thnum:
self.cond_put.wait()
self.stack.append(history_info)
self.cond_get.notifyAll()
self.cond_put.release()
def stop(self):
self.th_stop = True
for th in self.th:
th.join()
history_data = {}
cur_year = int(time.strftime("%Y"))
cur_month = int(time.strftime("%m"))
get_data = GetProductHistory()
get_data.start()
for item in list_product:
product = item[0]
history_data[product] = []
get_data.put(history_data, product, cur_year, cur_month)
get_data.stop()
for item in list_product:
product = item[0]
print(product)
print(history_data[product])