登录一个网站,然后访问该网站的另一个部分

Login on a website and then access another section of that site

本文关键字:网站 访问 另一个部 然后 一个 登录      更新时间:2023-10-16

我设法使用 curl 登录了我想要的网站,然后我尝试使用相同的句柄访问我网站的某个部分,但它无法识别我的当前会话。

我设置卷曲来处理自己的饼干。

curl_easy_setopt( curlHandleMO, CURLOPT_COOKIEFILE, "" );

我该怎么办?

抱歉,我还不能添加评论。您可以参考以下问题和答案:如何使用C++ cURL (libcurl) 管理简单的 PHP 会话

希望这会有所帮助。

我找到了一个解决方案:我在 Firefox 中使用 FireBug 来查看我想要的网站上的 POST 请求的外观,并创建了一个标头请求,就像 Firefox 使用的一样。

struct curl_slist *header=NULL; 
header = curl_slist_append(header,"Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8");
header = curl_slist_append(header,"Accept-Encoding: gzip, deflate");
header = curl_slist_append(header,"Accept-Language: en-us,ro-ro;q=0.8,ro;q=0.6,en-gb;q=0.4,en;q=0.2");
header = curl_slist_append(header,"Connection:  keep-alive");
header = curl_slist_append(header,"Cookie:  __utma=111401936.1442146463.1383320644.1384439040.1384441847.12; __utmz=111401936.1384276584.7.3.utmcsr=expert-monitor.ro|utmccn=(referral)|utmcmd=referral|utmcct=/LexMonitorMBM/comercial/clientextern/autentic.php; Clientextern=klhttfmf1jt2v7c11efcv4lqn4; __utmc=111401936; __utmb=111401936.9.10.1384441847");
header = curl_slist_append(header,"DNT: 1");
header = curl_slist_append(header,"Host:    www.expert-monitor.ro");
header = curl_slist_append(header,"Referer: http://www.expert-monitor.ro/LexMonitorMBM/comercial/clientextern/login.php?succes=0");
header = curl_slist_append(header,"User-Agent:  Mozilla/5.0 (Windows NT 6.1; WOW64; rv:25.0) Gecko/20100101 Firefox/25.0");
curl_easy_setopt(curlHandleMO, CURLOPT_HTTPHEADER, header);