1. 程式人生 > >cURL模擬登陸的各種問題

cURL模擬登陸的各種問題

太鬱悶了來寫下部落格

由於老師要求做的一個專案,開始了我一點都不會的PHP,雖然大家都說這個是最簡單的語言,可是小白就是小白,第一天開始查各種模擬登陸的列子,蒙圈了一天。

第二天,理智了點,終於看明白點了。把儲存cookie和驗證碼圖片弄了出來,由於之前一點都不會進行到目前為止我就有很多坑存在了。

1.網上很多程式碼沒有寫全,儲存cookie,那部,很多人在最開始定義的目錄檔案那步程式碼沒有給出來,導致我一直沒有看到我儲存到的cookie在哪兒,之後弄清楚了,雖然你寫的路徑可能是像這樣的"./temp"但是,如果沒有許可權的話,PHP會跑到系統根目錄去建立cookie檔案。= =  我就是在我的window裡面找到的,不過這個如果你不確定的話,可以直接echo下定義的路徑變數。

2.驗證碼。天坑。。。。。網上多少帖子說的是可以繞過驗證碼的,那都是2014年的事情了,現在不能為空了!!所以一定要輸,我一直想著這個工具能自己識別驗證碼,然後自動弄進去,我需要做的就是弄幾個引數,找好程式碼我就能直接看到我親切的登陸介面,小白就是可悲啊!!!!!!!!!!!!結論:程式碼只能給你顯示出來圖片,要自己在程式碼那裡手動輸入。(冷漠臉)

第三天:

應該說今天的問題是昨天下午就開始了的,昨天在YX的努力下!!我們終於模擬登陸成功了,接下來我們就可以就可以開始真正有意義的工作了,事實證明我們太年輕。。。。。

遇到了一個我第三天弄了一整天都還是沒有弄好的問題,天惹302跳轉,迴圈重定向。 我們接著請求課表頁面的時候不管程式碼怎麼改,永遠都是object moved  to  here  天啦嚕

 問題描述:

模擬登陸成功之後繼續請求了課表頁面,但是出現了object moved to here,非要人工再點一下here那個地方真正的頁面才會出來。

對於處理這個的問題我總結了以下幾個不能解決的方法:

1.有人說是重定向問題,需要設定CURLOPT_FOLLOWLOCATION為true,   不成功,原來就已經設定了,還有一種說是寫程式碼把location的值取出來接著請求。原理和這個設定是一樣的,但是我到object moved to here那個頁面看原始碼,location的值是空。。。。什麼都沒有。

2.翻閱了幾篇特別詳細的博文,下面也有人遇到類似的問題,但是博主們說法都有些相似,意思說header的資訊模擬的不完整,不正確,,,,天地良心,抓包之後顯示的能設的我都設了,真不知道還要弄什麼。  這個也不成功

3.還有一個很奇怪的地方,很多博主都有貼出來他們抓包的照片,用的工具應該是一樣的,他們抓包之後顯示的資料是包含表單的,我的就沒有,只有請求頭什麼的,但是我自己去看原始碼是包含他們提交的那些資料的,於是我又構造了表單提交,然並卵。。。。。。還是。。。。。Object moved to here  我恨你。。。。。。。。。。