通过PHP获取页面title内容的实战演示:
范例代码:
<?php /* 功能: 取得 URL 页面上的 <title> 内容 参数:$_POST['url'] */ // 设置最长执行的秒数 ini_set ("expect.timeout", 30); set_time_limit(30); // 检查 URL if(!isset($_POST['url']) || $_POST['url'] == ''){ echo "URL 错误"; exit; } /* 取得 URL 页面数据 */ // 初始化 CURL $ch = curl_init(); // 设置 URL curl_setopt($ch, CURLOPT_URL, $_POST['url']); // 让 curl_exec() 获取的信息以数据流的形式返回,而不是直接输出。 curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1); // 在发起连接前等待的时间,如果设置为0,则不等待 curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, 0); // 设置 CURL 最长执行的秒数 curl_setopt ($ch, CURLOPT_TIMEOUT, 30); // 尝试取得文件内容 $store = curl_exec ($ch); // 检查文件是否正确取得 if (curl_errno($ch)){ echo "无法取得 URL 数据"; //echo curl_error($ch);/*显示错误信息*/ exit; } // 关闭 CURL curl_close($ch); // 解析 HTML 的 <head> 区段 preg_match("/<head.*>(.*)<\/head>/smUi",$store, $htmlHeaders); if(!count($htmlHeaders)){ echo "无法解析数据中的 <head> 区段"; exit; } // 取得 <head> 中 meta 设置的编码格式 if(preg_match("/<meta[^>]*http-equiv[^>]*charset=(.*)(\"|')/Ui",$htmlHeaders[1], $results)){ $charset = $results[1]; }else{ $charset = "None"; } // 取得 <title> 中的文字 if(preg_match("/<title>(.*)<\/title>/Ui",$htmlHeaders[1], $htmlTitles)){ if(!count($htmlTitles)){ echo "无法解析 <title> 的内容"; exit; } // 将 <title> 的文字编码格式转成 UTF-8 if($charset == "None"){ $title=$htmlTitles[1]; }else{ $title=iconv($charset, "UTF-8", $htmlTitles[1]); } echo $title; }
问题内容: 我正在使用CURL来获取网站的状态(如果它处于启动状态/关闭状态或重定向到另一个网站)。我想使其尽可能地精简,但是效果不佳。 我把它包装在一个函数中。它工作正常,但性能并不是最好的,因为它会下载整个页面,如果我删除它,它会一直返回。 有谁知道如何提高性能? 问题答案: 首先确保URL实际上是有效的(字符串,不是空,语法不错),这可以快速检查服务器端。例如,首先执行此操作可以节省大量时间
本文向大家介绍PHP curl使用实例,包括了PHP curl使用实例的使用技巧和注意事项,需要的朋友参考一下 概述 本博客的前面两篇文章:curl和libcurl简介以及PHP中使用curl对PHP中curl的使用做了简单介绍,但是PHP中curl的使用却并不简单,尤其是curl的各种配置项,本篇文章会讲解几个PHP的实例,以便大家更好的理解curl。 实例:抓取页面 使用curl抓取页面相对来
本文向大家介绍PHP中使用CURL模拟登录并获取数据实例,包括了PHP中使用CURL模拟登录并获取数据实例的使用技巧和注意事项,需要的朋友参考一下 cURL 是一个功能强大的PHP库,使用PHP的cURL库可以简单和有效地抓取网页并采集内容,设置cookie完成模拟登录网页,curl提供了丰富的函数,开发者可以从PHP手册中获取更多关于cURL信息。本文以模拟登录开源中国(oschina)为例,和
问题内容: 如何不使用来获取html源代码? 我需要知道这一点,因为在某些虚拟主机上已禁用,因此您不能使用。是否可以使用cURL获取html文件的源(如果启用了cURL支持)?如果是这样,怎么办?谢谢。 问题答案: 请尝试以下操作: 我只推荐小文件使用。大文件将作为一个整体读取,并且可能会产生内存错误。 编辑:在评论中进行了一些讨论之后,我们发现问题是服务器无法解析主机名,并且该页面另外是http
本文向大家介绍PHP curl实现抓取302跳转后页面的示例,包括了PHP curl实现抓取302跳转后页面的示例的使用技巧和注意事项,需要的朋友参考一下 PHP的CURL正常抓取页面程序如下: 如果你抓取到的是302状态,是因为再抓取的过程中,有的跳转需要给下一个链接传递参数,而下一个链接同时也设置了如果没接收到相应的参数是为非法访问。 显示就应该正常了。 上面用来抓取功能,几乎应该没问题的。你
本文向大家介绍PHP cURL库函数抓取页面内容,包括了PHP cURL库函数抓取页面内容的使用技巧和注意事项,需要的朋友参考一下 cURL 是一个利用URL语法规定来传输文件和数据的工具,支持很多协议和选项,如HTTP、FTP、TELNET等,能提供 URL 请求相关的各种细节信息。最爽的是,PHP 也支持 cURL 库。 本文将介绍 cURL 的一些高级特性,以及在 PHP 中如何运用它。 1