2016-07-07 48 views
0

我在C++中使用curl從網站下載html頁面,然後保存它。 當我保存好html文件後,請用另一個程序讀取它,並將其保存爲一個字符串。在json之後保存html頁面 - ajax發佈請求

在該頁面包含由JSON-AJAX取得了一些請求(POST)。如果我打開瀏覽器,我有正確的內容。如果我用文本編輯器打開它,我有一個不好的內容,因爲POST請求不是。

所以,我怎麼能保存頁面後絲毫JSON的Ajax請求獲得的內容?

+1

這是一個[模擬瀏覽器]的作業(https://github.com/dhamaniasad/HeadlessBrowsers)! –

+0

我在谷歌上找過它,但是我無法在C++中使用簡單的無頭式瀏覽器。你能建議我一個嗎? 我只需要在通過broswer處理後保存內容。 – Carme

+0

對不起,我沒有使用過無頭瀏覽器的年齡。在這個問題上,我確實發現一些人在curl中使用ajax請求獲得成功。查找網頁的一種方法是在常規瀏覽器中安裝一個插件,讓您看到所有HTTP流量(「活動標題」)。一旦你可以看到ajax在做什麼,使用curl複製行爲就更容易了。但是,自動化大部分內容通過ajax進行頁面刮擦是一件麻煩事,無論你如何處理它。祝你好運! –

回答

0

Curl將從網頁下載HTML代碼,就是這樣。當您使用網絡瀏覽器打開HTML文件時,瀏覽器正在處理髮送的任何發佈請求。

您需要找出發佈請求包含的內容(即數據及其獲取方式),並分別發送該請求並保存響應。

你可能要考慮這個問題How do you make a HTTP request with C++?