实时采集新加坡交易所A50指数
http://www.investing.com/indices/ftse-china-a50
前段时间有人问我如何得到这个网页的实时指数变化,经过抓包发现该网站提供的指数实时变化是通过Websock实现的,普通的http采集无法抓到实时变化的数据,只能得到前台网页的数据(大约15~20秒变化一次)。
考虑实现代码的难度,我推荐使用fiddlercore来获取这个实时数据,只要开着ie就行了,呵呵。
具体效果见下图:
联系QQ:564955427
欢迎交流!
原始链接 http://www.cnblogs.com/Charltsing/p/A50.html
如何识别WebSockes
使用Fiddler查看Request Headers
GET /echo/444/6z1x7spy/websocket HTTP/1.1
Origin: http://www.investing.com
Sec-WebSocket-Key: l5fyZFbA5vIGAMpqRdhI/Q==
Connection: Upgrade
Upgrade: websocket
Sec-WebSocket-Version: 13
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; rv:11.0) like Gecko
Host: stream49.forexpros.com:443
Cache-Control: no-cache
使用Fiddler查看Reponse Headers
HTTP/1.1 101 Switching Protocols ----> 返回101表示服务器端已经理解了客户端的需求,并且客户端需要根据Upgrade中的协议类型,切换为新的协议来完成后续的通信。
Upgrade: websocket
Connection: Upgrade
Sec-WebSocket-Accept: OE5v65DVpoB/dn2GLCrVo9hqRV8=
EndTime: 16:27:41.872
ReceivedBytes: 125690
SentBytes: 6764
然后双击Session,就可以看到WebSockes Tab了
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架