鏂版氮鑲$エapi鎺ュ彛鍝噷璐拱 (瀹樻柟鑲$エ鏁版嵁鎺ュ彛api)

1、直接输入网址返回错误:Kinsoku jikou desu

在浏览器中输入网址以及股票代号:http://hq.sinajs.cn/list=sh601857,此时会返回:Kinsoku jikou desu!是拒绝访问的意思。

瀹炴椂鑾峰彇鑲$エ鏁版嵁api,鏂版氮鑲$エapi鎺ュ彛鍝噷璐拱

因为在2022年新浪更改了访问接口,需要加入一个header,referer:https://finance.sina.com.cn/

2、要在输入网址的同时输入参数,需要安装浏览器插件。

以google chrome浏览器为例,*载下**modheader插件3.1.19。

点击浏览器右上角的三个小竖点,选择更多工具-->扩展工具

瀹炴椂鑾峰彇鑲$エ鏁版嵁api,鏂版氮鑲$エapi鎺ュ彛鍝噷璐拱

或者在浏览器地址栏输入:chrome://extensions/,打开扩展工具页面。

勾上开发者选项:

瀹炴椂鑾峰彇鑲$エ鏁版嵁api,鏂版氮鑲$エapi鎺ュ彛鍝噷璐拱

找到自己已经*载下**好的Chrome离线安装文件“.crx”,然后将其从资源管理器中拖动到Chrome的扩展管理界面中。

点击添加扩展程序。

瀹炴椂鑾峰彇鑲$エ鏁版嵁api,鏂版氮鑲$エapi鎺ュ彛鍝噷璐拱

3、添加header参数。

此时,在网址栏后面会出现一个扩展程序按钮,点击后输入参数名称和值。

瀹炴椂鑾峰彇鑲$エ鏁版嵁api,鏂版氮鑲$エapi鎺ュ彛鍝噷璐拱

再刷新网页,就会返回结果了。

瀹炴椂鑾峰彇鑲$エ鏁版嵁api,鏂版氮鑲$エapi鎺ュ彛鍝噷璐拱

4、代码调用

以上是在浏览器地址栏输入网址访问的方式,比较直观,但实际应用的时候是通过程序代码调用的。不同的编程语言都提供了访问网络的方式,基本上大同小异。都是提供了需要访问的网址和参数。

以python为例:

import requests

gudaima = "sz000001"

headers = {'referer': 'http://finance.sina.com.cn'}

resp = requests.get('http://hq.sinajs.cn/list=' + gudaima, headers=headers, timeout=6)

data = resp.text

print(data)

运行结果:

瀹炴椂鑾峰彇鑲$エ鏁版嵁api,鏂版氮鑲$エapi鎺ュ彛鍝噷璐拱

注意:如果提示不识别requests,需要*载下**:

pip install requests -i http: / /pypi.douban.com/simple --trusted-host=pypi.douban.com

瀹炴椂鑾峰彇鑲$エ鏁版嵁api,鏂版氮鑲$エapi鎺ュ彛鍝噷璐拱