def stock_zh_a_spot() -> pd.DataFrame: """ 新浪财经-A股获取所有A股的实时行情数据, 重复运行本函数会被新浪暂时封 IP http://vip.stock.finance.sina.com.cn/mkt/#qbgg_hk :return: pandas.DataFrame """ big_df = pd.DataFrame() page_count = _get_zh_a_page_count() zh_sina_stock_payload_copy = zh_sina_a_stock_payload.copy() for page in tqdm(range(1, page_count + 1), desc="Please wait for a moment"): zh_sina_stock_payload_copy.update({"page": page}) r = requests.get(zh_sina_a_stock_url, params=zh_sina_stock_payload_copy) data_json = demjson.decode(r.text) big_df = big_df.append(pd.DataFrame(data_json), ignore_index=True) big_df = big_df.astype( { "trade": "float", "pricechange": "float", "changepercent": "float", "buy": "float", "sell": "float", "settlement": "float", "open": "float", "high": "float", "low": "float", "volume": "float", "amount": "float", "per": "float", "pb": "float", "mktcap": "float", "nmc": "float", "turnoverratio": "float", } ) return big_df
def stock_zh_a_spot_by_page(page=1): big_df = pd.DataFrame() page_count = get_zh_a_page_count() zh_sina_stock_payload_copy = zh_sina_a_stock_payload.copy() zh_sina_stock_payload_copy.update({"page": page}) res = requests.get(zh_sina_a_stock_url, params=zh_sina_stock_payload_copy) data_json = demjson.decode(res.text) big_df = pd.DataFrame(data_json) return big_df
def stock_zh_a_spot() -> pd.DataFrame: """ 从新浪财经-A股获取所有A股的实时行情数据, 重复运行本函数会被新浪暂时封 IP http://vip.stock.finance.sina.com.cn/mkt/#qbgg_hk :return: pandas.DataFrame symbol code name trade pricechange changepercent buy \ 0 sh600000 600000 浦发银行 12.920 -0.030 -0.232 12.920 1 sh600004 600004 白云机场 18.110 -0.370 -2.002 18.110 2 sh600006 600006 东风汽车 4.410 -0.030 -0.676 4.410 3 sh600007 600007 中国国贸 17.240 -0.360 -2.045 17.240 4 sh600008 600008 首创股份 3.320 -0.030 -0.896 3.310 ... ... ... ... ... ... ... 3755 sh600096 600096 云天化 5.270 -0.220 -4.007 5.270 3756 sh600097 600097 开创国际 10.180 -0.120 -1.165 10.180 3757 sh600098 600098 广州发展 6.550 -0.040 -0.607 6.540 3758 sh600099 600099 林海股份 6.540 -0.150 -2.242 6.540 3759 sh600100 600100 同方股份 8.200 -0.100 -1.205 8.200 sell settlement open high low volume amount \ 0 12.930 12.950 12.950 13.100 12.860 46023920 597016896 1 18.120 18.480 18.510 18.510 17.880 24175071 437419344 2 4.420 4.440 4.490 4.490 4.410 4304900 19130233 3 17.280 17.600 17.670 17.670 17.220 684801 11879731 4 3.320 3.350 3.360 3.360 3.300 8284294 27579688 ... ... ... ... ... ... ... 3755 5.280 5.490 5.490 5.500 5.220 16964636 90595172 3756 10.190 10.300 10.220 10.340 10.090 1001676 10231669 3757 6.550 6.590 6.560 6.620 6.500 1996449 13098901 3758 6.580 6.690 6.650 6.680 6.530 1866180 12314997 3759 8.210 8.300 8.300 8.310 8.120 12087236 99281447 ticktime per pb mktcap nmc turnoverratio 0 15:00:00 6.984 0.790 3.792289e+07 3.631006e+07 0.16376 1 15:00:07 32.927 2.365 3.747539e+06 3.747539e+06 1.16826 2 15:00:02 15.926 1.207 8.820000e+05 8.820000e+05 0.21525 3 15:00:02 22.390 2.367 1.736555e+06 1.736555e+06 0.06798 4 15:00:07 22.912 1.730 1.887569e+06 1.600444e+06 0.17185 ... ... ... ... ... ... 3755 15:00:00 56.728 1.566 7.523847e+05 6.963668e+05 1.28386 3756 15:00:00 17.552 1.434 2.452734e+05 2.303459e+05 0.44268 3757 15:00:00 25.476 1.059 1.785659e+06 1.785659e+06 0.07323 3758 15:00:00 540.496 3.023 1.433045e+05 1.433045e+05 0.85167 3759 15:00:07 -6.264 1.465 2.430397e+06 2.430397e+06 0.40782 """ big_df = pd.DataFrame() page_count = _get_zh_a_page_count() zh_sina_stock_payload_copy = zh_sina_a_stock_payload.copy() for page in tqdm(range(1, page_count+1), desc="Please wait for a moment"): zh_sina_stock_payload_copy.update({"page": page}) r = requests.get( zh_sina_a_stock_url, params=zh_sina_stock_payload_copy) data_json = demjson.decode(r.text) big_df = big_df.append(pd.DataFrame(data_json), ignore_index=True) return big_df
def stock_zh_a_spot() -> pd.DataFrame: """ 新浪财经-所有 A 股的实时行情数据; 重复运行本函数会被新浪暂时封 IP http://vip.stock.finance.sina.com.cn/mkt/#hs_a :return: 所有股票的实时行情数据 :rtype: pandas.DataFrame """ big_df = pd.DataFrame() page_count = _get_zh_a_page_count() zh_sina_stock_payload_copy = zh_sina_a_stock_payload.copy() for page in tqdm(range(1, page_count + 1), leave=False, desc="Please wait for a moment"): zh_sina_stock_payload_copy.update({"page": page}) r = requests.get(zh_sina_a_stock_url, params=zh_sina_stock_payload_copy) data_json = demjson.decode(r.text) big_df = big_df.append(pd.DataFrame(data_json), ignore_index=True) big_df = big_df.astype({ "trade": "float", "pricechange": "float", "changepercent": "float", "buy": "float", "sell": "float", "settlement": "float", "open": "float", "high": "float", "low": "float", "volume": "float", "amount": "float", "per": "float", "pb": "float", "mktcap": "float", "nmc": "float", "turnoverratio": "float", }) big_df.columns = [ '代码', '_', '名称', '最新价', '涨跌额', '涨跌幅', '买入', '卖出', '昨收', '今开', '最高', '最低', '成交量', '成交额', '_', '_', '_', '_', '_', '_', ] big_df = big_df[[ '代码', '名称', '最新价', '涨跌额', '涨跌幅', '买入', '卖出', '昨收', '今开', '最高', '最低', '成交量', '成交额', ]] return big_df