2010-05-08 105 views
0

有沒有一個好的,簡單的庫允許C++加載網頁?我只想以文本形式抓取源代碼。我沒有使用任何IDE或重要的庫,只是簡單的命令行。訪問C++中的網頁

切線方向,是否有一些基本的東西我錯過了關於C++編程?我認爲今天常見的任何語言都會擁有基於網絡的功能,這對於計算機使用來說非常重要,但我可以在沒有討論如何實現它的情況下找到它。我意識到C++明顯早於現代互聯網,所以它在這方面缺乏任何核心能力是合理的,但相關圖書館看起來很稀疏的事實令人困惑。

感謝您的幫助。

+1

如果它「只是直線命令行」,爲什麼不使用'wget'? – Stephen 2010-05-08 02:58:17

回答

7

當然,例如libcurl是強大和流行。

C++的Internet相關庫非常豐富 - 它們不僅僅是C++標準的一部分,部分原因是該標準的當前版本是,所以舊,儘管我確信這不是唯一的原因。但是,轉向開放源代碼的世界,你會發現比你可以搖動的更多的東西。

+0

我會說它主要是缺少標準的frim。 lib出於同樣的原因線程,圖形用戶界面,數據庫和所有的網絡東西都丟失了:std C++必須能夠在沒有任何這些東西(包括「無主機」環境)的環境中運行。 – 2010-05-08 03:50:50

+0

我認爲這是標準委員會的政治。我認爲這是希望達到完美和共識,在每個標準之前承受這種瘋狂,痛苦的時間 - 大量時間。 – wilhelmtell 2010-05-08 04:22:10

+0

@Drew,「未託管」的環境允許缺少標準庫的許多部分,例如,文件流,因此這不是缺少其他部分的明智原因,而這些部分可能會被「未完全託管」的環境類似地省略。 – 2010-05-08 04:32:46

2

libcurl是一個流行的C庫,用於獲取HTTP和其他URL。還有一個C++綁定的cURLpp

在Windows上,您擁有WinINetWinHTTP API。

我認爲HTTP有點太複雜,不能成爲C++標準庫的一部分。規範必須考慮很多細節,例如代理服務器和MIME類型。