1.模擬登入並存cookie
$login_url = 'https://xxx'; //登入頁面地址
$cookie = dirname(__FILE__)."/test.cookie"; //cookie檔案存放位置(自定義)
$account = 'xxx';
$password = 'ooo';
$post = array('user' => $account,'password' => $password);
$ch = curl_init(); //初始化curl模組
curl_setopt($ch, CURLOPT_URL, $login_url); //登入提交的地址
curl_setopt($ch, CURLOPT_HEADER, 0); //是否顯示頭資訊
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 0); //是否自動顯示返回的資訊
curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie); //設定cookie資訊儲存在指定的資料夾中
curl_setopt($ch, CURLOPT_POST, 1); //以POST方式提交
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));//要執行的資訊
curl_exec($ch); //執行CURL
curl_close($ch);
2.讀取登入後的頁面資料
$cookie = dirname(__FILE__)."/test.cookie"; //cookie檔案存放位置(自定義)
$data_url = "https://xxx"; //資料所在地址
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $data_url);
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,0);
curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_exec($ch);
curl_close($ch);
3.PDF檔案下載(無登入)
$source = 'https://xxx';//pdf所在網址
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $source);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$data = curl_exec($ch);
curl_close($ch);
$destination = './pdf/test.pdf';//存放pdf的位置
$file = fopen($destination, "w+");
fputs($file, $data);
fclose($file);
留言
張貼留言