《PHP应用:自己写的php curl库实现整站克隆功能》要点:
本文介绍了PHP应用:自己写的php curl库实现整站克隆功能,希望对您有用。如果有疑问,可以联系我们。
有时候经常会用到一些在线手册,比如国内或国外的,有些是拜访速度慢,有些是作者直接吧网站关闭了,有些是服务器总是宕机,所以还是全盘克隆到自己服务器比较爽.PHP教程
库特色:PHP教程
给定一初始连接,初始链接以下的层级所有文件会拷贝到当地.
多次克隆可以配置是否覆盖.
可以配置是否下载图片.
所有链接替换为相对链接,所以可以随便rewrite.
绝对不会出现文件覆盖等问题.
最NB的特点是,没有比这更NB的库了.PHP教程
SVN:http://svn.phpdr.net/repos/ares/php/library/trunk/lib/CurlMulti/MyCurl/Clone.phpPHP教程
维易PHP下载:PHP教程
克隆成果展示(这个克隆操作几秒钟就完成了):PHP教程
克隆源网站:http://www.laruence.com/manual/
克隆成果:http://manual.phpdr.net/yaf/PHP教程
Demo代码:
PHP教程
代码如下:
<必修php
class Controller_Spider extends MyYaf_Controller_Base{
function init(){
parent::init();
if(!$this->getRequest()->isCli()){
Ares_Http::error403();
}
include 'CurlMulti/CurlMulti.php';
include 'CurlMulti/MyCurl.php';
include 'phpQuery.php';
}
}
代码如下:
<必修php
class YafdocController extends Controller_Spider {
function init() {
parent::init ();
include 'CurlMulti/MyCurl/Clone.php';
}
function indexAction() {
$url = 'http://www.laruence.com/manual';
$dir = Yaf_Application::app ()->getAppDirectory () . '/data/manual';
$cacheDir = $this->getBaseDir () . '/cache/curl';
if (! is_dir ( $cacheDir )) {
mkdir ( $cacheDir );
}
$curl = new CurlMulti ();
$curl->maxThread = 10;
$curl->cache ['enable'] = true;
$curl->cache ['enableDownload'] = true;
$curl->cache ['dir'] = $cacheDir;
$curl->cache ['compress'] = true;
$clone = new MyCurl_Clone ( $curl, $url, $dir );
$clone->overwrite = true;
$clone->start ();
return false;
}
}
维易PHP培训学院每天发布《PHP应用:自己写的php curl库实现整站克隆功能》等实战技能,PHP、MYSQL、LINUX、APP、JS,CSS全面培养人才。
转载请注明本页网址:
http://www.vephp.com/jiaocheng/12254.html