0

首先,我不是想侵入任何东西或任何人的电子邮件。

我是新的软件工程师,我需要登录公司 wiki 页面并将显示的信息下载到文本文件或其他内容中,这样我就可以搜索我正在寻找的数据并根据我从 wiki 页面中学到的内容进行讨论。我确实有 wiki 页面的用户名和密码,无需闯入。

问题是,我想不出一个好的方法来做到这一点。我正在使用 C++,操作系统是 Linux。

这是我到目前为止所拥有的。这不会发出用户名和密码。有人可以告诉我如何发布用户名和密码吗?

string line;
system("wget www.cooperateweb.com/wikipage/productpage/FWversions+date");

ifstream file ("index.html");

while (!file.eof())
{
getline(file,line);
cout<<line<<"\n";    }    file.close();
4

4 回答 4

5

与任何 URL 相同的方式。

scheme://username:password@host/path
于 2012-04-10T18:44:58.210 回答
3

来自TFM

 --user=user
 --password=password
    Specify the username user and password password for both FTP and HTTP
    file retrieval. These parameters can be overridden using the --ftp-user
    and --ftp-password options for FTP connections and the --http-user and
    --http-password options for HTTP connections. 
于 2012-04-10T18:46:27.907 回答
1
#define MAX_CMD_LENGTH 1000;
char cmdBuffer[MAX_CMD_LENGTH];
/* for sake of demonstration */
char *username = "foo";
char *password = "bar";
sprintf(cmdBuffer, "wget --user=%s --password=%s http://www.cooperateweb.com/wikipage/productpage/FWversions+date", username, password);
char *cmd = malloc(strlen(cmdBuffer) + 1);
strncpy(cmd, cmdBuffer, strlen(cmdBuffer) + 1);
system((const char *)cmd);
free(cmd);
于 2012-04-10T18:51:40.813 回答
0

恕我直言,最简单的方法是使用 curl。Curl 是一个比 wget 更复杂的 Web 客户端。

根据您的需要,最好的方法可能是基于 Boost 的 cpp-netlib。

于 2012-04-10T18:48:56.703 回答