PHP: How to download a webpage (aka web scrapping) with PHP PHP: Nasıl bir web sayfası PHP ile (aka web hurdaya) indirmek için
Posted on 03. 03 olarak gönderildi. Oct, 2009 by Dragos in Coding , PHP Eki, 2009 Kodlama, PHP ve Dragos tarafından
There are many ways of downloading web pages, or web content. Orada web sayfalarını veya web içerik indirme birçok yolu vardır. Personally I like to use cURL for my web scrapping needs, but sometimes I also use fsockopen and file_get_contents . Şahsen ben cURL web hurdaya ihtiyaçları için kullanılacak, ancak bazen de fsockopen file_get_contents ve kullanın.
Here are 3 different functions that will allow you to download web content. İşte size ücretsiz web içeriği sağlayacak 3 farklı işlevleri vardır.
cURL : cURL:
function getData($url) { fonksiyonu getData ($ url) ( if($url!='localhost' && $url!='http://localhost') { if ($ url = '' & & $ localhost url = 'http://localhost') ( $ch=curl_init(); $ ch = curl_init (); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt ($ ch, CURLOPT_URL, $ url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE); curl_setopt ($ ch, CURLOPT_RETURNTRANSFER, TRUE); curl_setopt($ch,CURLOPT_USERAGENT,"Mozilla/6.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.0.1) Gecko/2008070208 Firefox/3.0.3"); curl_setopt ($ ch, CURLOPT_USERAGENT, "Mozilla/6.0 (compatible; Windows NT 5.1; en-US; rv: 1.9.0.1) Gecko/2008070208 Firefox/3.0.3"); curl_setopt($ch, CURLOPT_FOLLOWLOCATION,3); curl_setopt ($ ch, CURLOPT_FOLLOWLOCATION, 3); $result['data']=curl_exec($ch); $ result [ 'veri'] = curl_exec ($ ch); $result['error']=curl_error($ch); $ result [ 'hata'] = curl_error ($ ch); curl_close($ch); curl_close ($ ch); return $result; return $ result; } ) else return $result['error']='err'; else return $ result [ 'hata'] = 'err'; } )
fsockopen fsockopen
function getData($url) { $arr=parse_url($url); $fp = fsockopen($arr['host'], 80, $errno, $errstr, 30); if(!$fp) { return false; }else { // send headers $out = "GET ".fsockopen($arr['host'], 80, $errno, $errstr, 30)." HTTP/1.1\r\n"; $out .= "Host: ".str_replace('http://'.$arr['host'],'',$url)."\r\n"; $out .= "User-Agent: FSOCKOPEN\r\n"; $out .= "Connection: Close\r\n\r\n"; fwrite($fp, $out); while(!feof($fp)) { $contents .= fgets($fp, 4096); }; fclose($fp); return $contents; } } fonksiyonu getData ($ url) ($ arr = parse_url ($ url); $ fp = fsockopen ($ arr [ 'host'], 80, $ errno, $ errstr, 30) if ($ fp) (return false; out = "GET) else (/ /" başlıklarını $ gönderebilirsiniz. fsockopen ($ arr [ 'host'], 80, $ errno, $ errstr, 30). "HTTP/1.1 \ r \ n"; $ .= out " host: ". str_replace ( 'http://'. $ arr [ 'host'],'',$ URL)." \ r \ n "; $ out .=" User-Agent: fsockopen \ r \ n " $ out .= "Connection: Close \ r \ n \ r \ n"; ($ fp, $ out) while (! feof ($ fp)) ($ contents .= fgets ($ fp, 4096) fwrite; ); fp) ($ fclose $ içeriği; return)) file_get_contents file_get_contents
function getData($url) { fonksiyonu getData ($ url) ( return file_get_contents($url); return file_get_contents ($ url); } )
As you see the easiest way of downloading web content is by using the file_get_contents function, but if you need more options, especially if you are working with the headers, then cURL is the best way to go for you. , Sonra cURL gibi web içerik indirme ve kolay yolu görmek file_get_contents fonksiyonunu kullanarak, ancak eğer özellikle başlıklarını çalışırken daha fazla seçenek ihtiyacınız gitmek için en iyi yoldur.
Related posts: Ilgili posta:
- ferry ardhana feribot ardhana












































