[請益] 有沒有curl函式庫的教學?

看板PHP作者 (天行者)時間14年前 (2011/10/23 22:32), 編輯推噓0(001)
留言1則, 1人參與, 最新討論串1/1
http://scbx.mssm.edu/sitehound/sitehound-web/Input.html 上面這個網址是我要蒐集查詢結果的網站 只需要填入PDB ID,其他都是用預設的即可 每丟一次query出去,要等5分鐘看看伺服器是不是有計算出結果 如果有就將結果的網頁內容儲存下來,沒有就進行下一個query 而我大概有將近800個query需要丟給這個網站 想藉由撰寫一個自動post並擷取結果的php程式來抓結果 但基於我是個新手,只會php最基本的變數迴圈那些 根本不會什麼curl函式,拜過谷哥大神後 只知道有一堆參數可以下 但是光看字面上的解釋我根本搞不清楚該怎麼應用... 目前大概卡在post參數丟出去後,抓不到結果的那個網頁 我猜大概是因為我只抓submit後的第一個網頁內容 但他是網頁一直轉來轉去,所以實在不知道要怎樣才能抓到最後一個網頁的內容 以下是我從google版改編後的程式碼: (my388apo.txt是一份紀錄著一堆PDB ID參數的文件,執行後有結果的參數例如 "1lf4" ) <?php ob_implicit_flush(); $inputFile = fopen("my388apo.txt", "r"); while (!feof($inputFile)) { //讀取pdbid $inputpdbid = fgetss($inputFile); //基本參數設定 set_time_limit(0); $ch = curl_init(); $URL="http://scbx.mssm.edu/sitehound/sitehound-web/cgi/wait1.cgi/"; //post要丟的參數 $argument = "pdb_id=".trim($inputpdbid)."&probe=CMET"."&algorithm=a"; curl_setopt($ch, CURLOPT_URL,$URL); curl_setopt($ch, CURLOPT_POST, 1); //回傳為字串 curl_setopt($ch,CURLOPT_RETURNTRANSFER,true); curl_setopt($ch, CURLOPT_POSTFIELDS, $argument); $data = curl_exec($ch); print ( "data = $data <br />" ); } ?> 嗯...印出來的結果都是Server error.... 拜託各位好心的大大~~給點提示吧!! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 203.70.88.90

10/30 12:53, , 1F
他可能有檢查user agent,最好設一下
10/30 12:53, 1F
文章代碼(AID): #1Ef2LW5l (PHP)
文章代碼(AID): #1Ef2LW5l (PHP)