输入banner图图片脚本导航/分类

通过URL抓取网页的TITLE,有些网站抓不到,方法愚笨,求指点。

本帖最后由 u012716911 于 2013-11-04 11:25:29 编辑

curl 抓取 标题

代码是我自己这样想着写的,不知道还有没有更好的方法。请各位给些指点
有些网站可以抓到,如百度,有些网站就抓不到,比如太平洋汽车的首页。

public function set_title()	{		// 获取进来URL		$url = $_POST['url'];		// $url = "www.pcauto.com.cn"; 抓不到!		//一连串的curl设置				$ch = curl_init();		curl_setopt($ch,CURLOPT_URL,$url);		curl_setopt($ch,CURLOPT_HEADER,0);		curl_setopt($ch,CURLOPT_ENCODING,'gzip');		curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);		$content_source = curl_exec($ch);		curl_close($ch);			//获取抓到内容的编码格式		$encode = mb_detect_encoding($content_source, array('GB2312','GBK','UTF-8','ASCII')); 				//转码		$content_source = iconv($encode, 'utf-8//IGNORE',$content_source);				//截取		if(preg_match("/<title>(.*?)<\/title>/i",$content_source,$title))		{			echo $title[1];		}		else		{			echo '拉取标题失败';		}	}</pre> </p> <br /> <h2>回复讨论(解决方案)</h2> <p class="sougouAnswer">  <title>([\s\S]*?)<\/title> </p> <p class="sougouAnswer">  问题出在正则匹配那里,你加个 s 修正符就好了  <br /> if(preg_match("/<title>(.*?)<\/title>/is",$content_source,$title))  <br />  <br /> s  如果设定了此修正符,模式中的圆点元字符(.) 匹配所有的字符,包括换行符。没有此设定的话,则不包括换行符。 </p> <p class="sougouAnswer">  正则修饰符 </p> <p class="sougouAnswer">  问题出在正则匹配那里,你加个 s 修正符就好了  <br /> if(preg_match("/<title>(.*?)<\/title>/is",$content_source,$title))  <br />  <br /> s  如果设定了此修正符,模式中的圆点元字符(.) 匹配所有的字符,包括换行符。没有此设定的话,则不包括换行符。  <br /> 非常感谢  </div>

  </div>

<script type="text/javascript" src="/layui/layui.js"></script>
<script>
layui.use('code', function(){
  
layui.code({
  elem: 'pre', //默认值为.layui-code
  about:false,
  title:'通过URL抓取网页的TITLE,有些网站抓不到,方法愚笨,求指点。代码块',
  encode: true //是否转义html标签。默认不开启
});
});
</script>
<footer class="comm-footer">
           <ul class="channels">
              <li>
                <a target="_top" href="/system/">操作系统</a>
            </li><li>
                <a target="_top" href="/down/">程序下载</a>
            </li><li>
                <a target="_top" href="/jquery/">jquery插件库</a>
            </li><li>
                <a target="_top" href="/jiaoben/">编程</a>
            </li><li>
                <a target="_top" href="/db/">数据库</a>
            </li><li>
                <a target="_top" href="/tools/">在线工具</a>
            </li><li>
                <a target="_top" href="/framebook/">框架书籍</a>
            </li><li>
                <a target="_top" href="/xitongjiaocheng/">系统教程</a>
            </li><li>
                <a target="_top" href="/ruanjianxiazai/">软件下载</a>
            </li>            </ul>
            <ul class="versions">
            <li>
                <a href="https://m.gxlcms.com" class="active">触屏版</a>
            </li>

            <li>
                <a href="https://www.gxlcms.com" target="_top">电脑版</a>
            </li>
            </ul>
           
              
     
        <p><a href="https://beian.miit.gov.cn/" target="_blank"  style="color:#ffffff"></a><script>
var _hmt = _hmt || [];
(function() {
  var hm = document.createElement("script");
  hm.src = "https://hm.baidu.com/hm.js?6c9b8cea1903c9f813f150c04aeebc3c";
  var s = document.getElementsByTagName("script")[0]; 
  s.parentNode.insertBefore(hm, s);
})();
</script></p>
        </footer>	

</body>
</html>