这篇“php如何只获取文章文字内容”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“php如何只获取文章文字内容”文章吧。
php有什么用
php是一个嵌套的缩写名称,是英文超级文本预处理语言,它的语法混合了C、Java、Perl以及php自创新的语法,主要用来做网站开发,许多小型网站都用php开发,因为php是开源的,从而使得php经久不衰。
php只获取文章文字内容的方法:1、创建一个PHP示例文件;2、通过定义“function curl_request ( $url , $post = '' , $cookie = '' , $returnCookie = 0 ) {...}”方法实现只抓取网页文字内容,并过滤其标签即可。
php只抓取网页body文字内容,并过滤网页标签
代码如下:
<?php
function curl_request ( $url , $post = '' , $cookie = '' , $returnCookie = 0 ) {
$ua = $ua==''?$_SERVER ['HTTP_USER_AGENT']:'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; QQDownload 732; .NET4.0C; .NET4.0E; LBBROWSER)' ;
$curl = curl_init ( ) ;
curl_setopt ( $curl , CURLOPT_URL , $url ) ;
curl_setopt ( $curl , CURLOPT_USERAGENT , $ua ) ;
curl_setopt ( $curl , CURLOPT_FOLLOWLOCATION , 1 ) ;
curl_setopt ( $curl , CURLOPT_AUTOREFERER , 1 ) ;
curl_setopt ( $curl , CURLOPT_REFERER , "https://www.baidu.com" ) ;
if ( $post ) {
curl_setopt ( $curl , CURLOPT_POST , 1 ) ;
curl_setopt ( $curl , CURLOPT_POSTFIELDS , http_build_query ( $post ) ) ;
}
if ( $cookie ) {
curl_setopt ( $curl , CURLOPT_COOKIE , $cookie ) ;
}
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt ( $curl , CURLOPT_HEADER , $returnCookie ) ;
curl_setopt ( $curl , CURLOPT_TIMEOUT , 10 ) ;
curl_setopt ( $curl , CURLOPT_RETURNTRANSFER , 1 ) ;
$data = curl_exec ( $curl ) ;
if ( curl_errno ( $curl ) ) {
return curl_error ( $curl ) ;
}
curl_close ( $curl ) ;
if ( $returnCookie ) {
list ( $header , $body ) = explode ( "\r\n\r\n" , $data , 2 ) ;
preg_match_all ( "/Set\-Cookie:([^;]*);/" , $header , $matches ) ;
$info [ 'cookie' ] = substr ( $matches [ 1 ] [ 0 ] , 1 ) ;
$info [ 'content' ] = $body ;
return $info ;
} else {
//return $data ;
$data=mb_convert_encoding($data, 'UTF-8', 'UTF-8,GBK,GB2312,BIG5');
preg_match("/<body.*?>(.*?)<\/body>/is",$data,$match);
$str= trim($match[1]);
$html = strip_tags($str);
$html_len = mb_strlen($html,'UTF-8');
$html = mb_substr($html, 0, strlen($html), 'UTF-8');
$search = array(" "," ","\n","\r","\t");
$replace = array("","","","","");
echo str_replace($search, $replace, $html);
}
}
curl_request ( $url, $post = '' , $cookie = '' , $returnCookie = 0 );
?>
以上就是关于“php如何只获取文章文字内容”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注天达云行业资讯频道。