色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

php curl noscript

林玟書1年前6瀏覽0評論

在使用PHP進行網絡編程的過程中,常常會涉及到使用curl庫進行網頁的訪問和數據的處理,而在處理網頁過程中,有時候會遇到一些網站對JS腳本的限制,這時候我們可以使用php curl noscript選項來進行調整和處理。

例如,有時候在使用curl庫訪問網站時,我們會發現網站需要我們執行一些JS腳本才能夠獲取到我們需要的數據。這種情況下,我們可以使用curl庫中的noscript選項來取消對JS腳本的支持,從而直接獲取需要的數據。

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://www.example.com/data.php");
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows NT 6.1; rv:60.0) Gecko/20100101 Firefox/60.0");
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); 
curl_setopt($ch, CURLOPT_ENCODING, "");
curl_setopt($ch, CURLOPT_AUTOREFERER, true);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 5);
curl_setopt($ch, CURLOPT_TIMEOUT, 3600);
curl_setopt($ch, CURLOPT_MAXREDIRS, 10);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($ch, CURLOPT_NOSIGNAL, 1); //avoid curl loops
curl_setopt($ch, CURLOPT_REFERER, "http://www.example.com");
curl_setopt($ch, CURLOPT_COOKIEJAR, "cookie.txt");
curl_setopt($ch, CURLOPT_COOKIEFILE, "cookie.txt");
curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: application/x-www-form-urlencoded"));
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, "param1=value1¶m2=value2");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_FAILONERROR, false);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_AUTOREFERER, 1);
curl_setopt($ch, CURLOPT_REFERER, 'http://www.example.com');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_NOBODY,true);
curl_setopt($ch, CURLOPT_VERBOSE, 1);
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows NT 6.1; rv:60.0) Gecko/20100101 Firefox/60.0");
//disable script execution
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Accept-Language: en-US,en;q=0.5','Connection: keep-alive', 'Referer: http://www.example.com' ,'Content-Type: application/x-www-form-urlencoded','User-Agent: Mozilla/5.0 (Windows NT 6.1; rv:60.0) Gecko/20100101 Firefox/60.0', 'DNT: 1', 'Expect:'));
curl_setopt($ch, CURLOPT_ENCODING, 'gzip, deflate');
$result = curl_exec($ch);
curl_close($ch);

在上述代碼中,我們通過使用curl_setopt函數來對noscript進行配置和設置,從而取消了對JS腳本的支持,避免了在訪問時出現由于JS腳本的執行而導致的問題。

除了在訪問時,noscript還可以在其他場合下使用。例如,在處理網頁數據時,有時候需要從HTML文本中去除JS腳本,這時候我們也可以使用noscript選項來進行處理。

$html = file_get_contents("http://www.example.com");
//remove noscript tags
$html = preg_replace('/[\s\S]*?<\/noscript>/', '', $html);
echo $html;

在上述代碼中,我們使用file_get_contents函數獲取網頁內容,并使用preg_replace函數來移除noscript標簽,從而我們可以獲取到不包含JS腳本的HTML文本。

總之,在使用curl庫進行網頁處理時,noscript是一個十分重要的選項,能夠解決很多由JS腳本引起的問題,大大提高了我們的數據獲取和處理效率。