c++ - 我可以对不同的网址使用相同的 curl 句柄吗? (试图从一个网址的多个页面下载数据)

标签 c++ ssl curl libcurl

我正在尝试从一个包含多个页面的 url 下载数据。 例如)https://stackoverflow.com/questions/tagged/c%2b%2b?sort=newest&page=2&pagesize=15 我想从不同的页面下载所有数据 ex) pages=1, pages=2, pages=3 等等.

如果我用某个页面的一个 url 创建一个 curl 句柄, 在不担心性能的情况下替换 url(仅页码)可以吗?

每次移至下一页并下载数据时,我都会创建 curl 句柄。 我从其他人那里得到建议,最好创建一个 ssl session 并保持其连接,这样我就不必在创建 SSL 连接时进行所有 SSL 握手。

根据 Libcurl 页面,建议使用相同的句柄以提高性能,但我不确定是否可以使用不同的 URL。

最佳答案

您可以而且应该尽可能重复使用相同的 curl 实例。继续重复 curl_easy_setopt(CURLOPT_URL, ...); curl_easy_perform(...); 调用。

补充说明:

  1. 如果您使用 curl_multi_init,您可以并行下载多个 URL界面 ( example )。

  2. StackExchange 有一个 very good REST API .没有必要刮掉它。

关于c++ - 我可以对不同的网址使用相同的 curl 句柄吗? (试图从一个网址的多个页面下载数据),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56321261/

相关文章:

google-app-engine - 使用 SSL 为 Google App Engine 上的自定义域登录 Google 帐户的重定向循环

node.js - "Client network socket disconnected before secure TLS connection was established", Node 10

php - 是否可以使用 PHP 中的 cURL 或 Socket 函数确定最新的 jQuery 版本?

perl - 如何编写 Perl 脚本以使用 curl 处理 URL?

powershell - 使用 Powershell/curl 检查 http header 的问题

c++ - 密码输入中的光标移动c++\

c++ - 使用 System.Diagnostics C++.Net 2003 fx1.1

c++ - 使用 jsoncpp 时从 JSON 中剥离私有(private)数据的最佳方法

c++ - 重载输出运算符给出十六进制数而不是字符串

php - Stripe - PHP 错误 - Stripe 不再支持使用 TLS 1.0 发出的 API 请求