【问题标题】:Save html page after JSON - AJAX post requestJSON 后保存 html 页面 - AJAX 发布请求
【发布时间】:2016-11-10 06:37:59
【问题描述】:

我在 C++ 中使用 curl 从网站下载 html 页面,然后保存它。 在我保存了 html 文件后,我必须使用另一个程序来读取它,并将其保存在一个字符串中。

此页面包含一些由 JSON-AJAX 发出的请求 (POST)。如果我用浏览器打开它,我就有正确的内容。如果我用文本编辑器打开它,我的内容很糟糕,因为没有发出 POST 请求。

那么我怎样才能保存页面在 JSON-AJAX 请求后获得的内容呢??

【问题讨论】:

  • 这是headless browser的工作!
  • 我在 google 上找过它,但我找不到在 c++ 中使用的简单无头浏览器。你能给我推荐一个吗?我只需要在浏览器处理后保存内容。
  • 抱歉,我已经很久没有使用过无头浏览器了。在 SO 上四处寻找,我确实发现有些人在 curl 中使用 ajax 请求取得了成功。找出网页在做什么的一种方法是在您的常规浏览器中安装一个插件,让您可以查看所有 HTTP 流量(“实时标头”)。一旦您可以看到 ajax 正在做什么,使用 curl 复制该行为就更容易了。但是,无论您如何处理,自动抓取大部分内容来自 ajax 的页面都是一件麻烦事。祝你好运!

标签: c++ json ajax curl


【解决方案1】:

Curl 将从页面下载 HTML 代码,仅此而已。当您使用网络浏览器打开 HTML 文件时,浏览器会处理发送的任何发布请求。

您需要找出发布请求包含的内容(即数据及其获取方式)并单独发送该请求并保存响应。

你可能想看看这个问题How do you make a HTTP request with C++?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-02-13
    • 1970-01-01
    • 2014-12-08
    • 2013-01-28
    • 2016-04-14
    • 2013-01-15
    • 1970-01-01
    相关资源
    最近更新 更多