php中抓取网页内容的实例详解

yipeiwu_com6年前PHP代码库

php中抓取网页内容的实例详解

方法一:

使用file_get_contents方法实现

  $url = "http://news.sina.com.cn/c/nd/2016-10-23/doc-ifxwztru6951143.shtml";
    $html = file_get_contents($url);
    //如果出现中文乱码使用下面代码
    //$getcontent = iconv("gb2312", "utf-8",$html);
    echo "<textarea style='width:800px;height:600px;'>".$html."</textarea>";

代码很简单,一看就懂,不解释了。

 方法二:

使用curl实现

$url = "http://news.sina.com.cn/c/nd/2016-10-23/doc-ifxwztru6951143.shtml";
    
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
$html = curl_exec($ch);
curl_close($ch);

echo "<textarea style='width:800px;height:600px;'>".$html."</textarea>";

curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);

加上这句代码,表示如果请求被重定向时,可以访问到最终的请求页面,不然请求的结果会显示如下内容:

<head><title>Object moved</title></head>
<body><h1>Object Moved</h1>This object may be found <a href="some link." rel="external nofollow" >here</a>.</body>

如意疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

相关文章

一个简单的php路由类

本文实例为大家分享了php编写一个简单的路由类,供大家参考,具体内容如下 <?php namespace cmhc\Hcrail; class Hcrail {...

一个完整的PHP类包含的七种语法说明

类中的七种语法说明 -属性 -静态属性 -方法 -静态方法 -类常量 -构造函数 -析构函数 <?php class Student { //...

PHP面向对象程序设计类的定义与用法简单示例

本文实例讲述了PHP面向对象程序设计类的定义与用法。分享给大家供大家参考,具体如下: <?php class Person { private $name; p...

浅析HTTP消息头网页缓存控制以及header常用指令介绍

网页的缓存是由HTTP消息头中的“Cache-control”来控制的,常见的取值有private、no-cache、max-age、must-revalidate等,默认为privat...

php中用数组的方法设置cookies

复制代码 代码如下: <?php         function set_cronology($name,$value,$duration...