alon_wu 2023-02-14 13:47 采纳率: 66.7%
浏览 93
已结题

Qt c++同时http get

我想使用Qt获取腾讯股票接口的数据,使用的是http的get,相当于网页访问,但是腾讯股票接口的网络有获取代码数量限制,现有共5080个左右的股票,准备分成800个每组进行http请求获取,获取后再将结果进行拼接,但是时间要求为同时,请问如何才能使用Qt实现?另外麻烦告知这些属于哪方面知识,推荐些书或教程,谢谢

  • 写回答

12条回答 默认 最新

  • 傻傻的心动 2023-02-14 15:39
    关注

    对于这个需求,可以考虑使用Qt的网络模块,通过发送多个并发请求来获取所有股票的数据,然后再将结果进行拼接。具体来说,可以使用QNetworkAccessManager类来管理网络请求,使用QNetworkRequest类来设置请求头和URL,使用QNetworkReply类来获取响应数据。

    为了实现同时请求多个URL,可以使用QEventLoop类和QTimer类,将每个请求放入事件循环中,通过QTimer的timeout()信号来实现每隔一段时间发送下一个请求,以达到同时请求多个URL的效果。

    此外,还需要注意到腾讯股票接口的访问频率限制,需要合理设置请求时间间隔,以避免被封禁IP等风险。

    这些属于Qt框架的网络编程和多线程编程知识,可以参考Qt官方文档中的以下章节:

    Qt Network Module: https://doc.qt.io/qt-5/qtnetwork-module.html
    Multithreading Technologies in Qt: https://doc.qt.io/qt-5/threads-technologies.html
    此外,对于网络编程和多线程编程方面的基础知识,可以参考以下经典书籍:

    Unix网络编程(卷1:套接字联网API)(W.Richard Stevens 著,郑钢 译)
    Linux多线程服务端编程(汤亮 著)

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(11条)

报告相同问题?

问题事件

  • 系统已结题 2月22日
  • 已采纳回答 2月14日
  • 修改了问题 2月14日
  • 创建了问题 2月14日

悬赏问题

  • ¥15 关于#matlab#的问题:在模糊控制器中选出线路信息,在simulink中根据线路信息生成速度时间目标曲线(初速度为20m/s,15秒后减为0的速度时间图像)我想问线路信息是什么
  • ¥15 banner广告展示设置多少时间不怎么会消耗用户价值
  • ¥16 mybatis的代理对象无法通过@Autowired装填
  • ¥15 可见光定位matlab仿真
  • ¥15 arduino 四自由度机械臂
  • ¥15 wordpress 产品图片 GIF 没法显示
  • ¥15 求三国群英传pl国战时间的修改方法
  • ¥15 matlab代码代写,需写出详细代码,代价私
  • ¥15 ROS系统搭建请教(跨境电商用途)
  • ¥15 AIC3204的示例代码有吗,想用AIC3204测量血氧,找不到相关的代码。