講師回答 / Peter
我的初步判斷是因為從SAE訪問你們學校教務處網站的效率比較低,導致超時了。如果是這個錯誤,可以設置curl_setopt($ch, CURLOPT_TIMEOUT,60),設為60s超時。
2014-07-02
講師回答 / Peter
這部分內容涉及到讀頁面javascript代碼,已經不在這個課程的范圍之內了。
如果您有興趣的話,可以用chrome打開慕課網的登錄頁面,然后右鍵審查元素。之后在Sources里面找到static/component/logic/login/login-regist.js腳本文件。然后在里面會發現有一個ajax調用,url=/user/login,就可以找到對應的請求的數據了。分析這個ajax調用,就可以知道登陸操作就是這個ajax調用,做的事情就是發送一個http請求。里面url,傳遞的data都有清晰...
2014-06-29
已采納回答 / Peter
學員您好:
我已經仔細檢查了教學案例,crawler03.php這個例子并沒有問題,crawler04.php里面Cookie設置遺漏了兩行設置代碼:
curl_setopt($curlobj, CURLOPT_COOKIEFILE, "cookiefile");
curl_setopt($curlobj, CURLOPT_COOKIEJAR, "cookiefile");
添加進去之后就可以順利執行了,如果認真看了03案例之后,會發現這個問題在案例里面也有提及...
2014-06-26
講師回答 / Peter
嗯,這次課程中很多同學都是因為代碼沒有按照課程提示的編寫導致看不到相應的結果。我以后的課程還是一點一點給大家敲代碼吧。
不過,這樣的話,課程的時間會相應拉長了。
2014-06-25
已采納回答 / 諸葛小飛
仔細看了教程 然后對比后終于發現問題了 urlencode(iconv("utf-8","GB2312//ignore",("您本次的驗證碼是:".$mcode))); 發送的內容的中文必須再轉為gbk 然后再轉碼 才有用。而不是只設置下array("application/x-www-form-unlencode;charset=GB2312","Content-length:".strlen($p...
2014-06-23