自己写的php curl库实现整站克隆功能
发布时间:2020-12-12 20:41:20 所属栏目:PHP教程 来源:网络整理
导读:有时候经常会用到一些在线手册,比如国内或国外的,有些是访问速度慢,有些是作者直接吧网站关闭了,有些是服务器总是宕机,所以还是全盘克隆到自己服务器比较爽。 库特点: 给定一初始连接,初始链接以下的层级所有文件会拷贝到本地。多次克隆可以配置是否
有时候经常会用到一些在线手册,比如国内或国外的,有些是访问速度慢,有些是作者直接吧网站关闭了,有些是服务器总是宕机,所以还是全盘克隆到自己服务器比较爽。 库特点: 给定一初始连接,初始链接以下的层级所有文件会拷贝到本地。 多次克隆可以配置是否覆盖。 可以配置是否下载图片。 所有链接替换为相对链接,所以可以随便rewrite。 绝对不会出现文件覆盖等问题。 最NB的特点是,没有比这更NB的库了。 SVN: 编程之家下载: 克隆结果展示(这个克隆操作几秒钟就完成了): 克隆源网站: 克隆结果: Demo代码: 代码如下: getRequest()->isCli()){
Ares_Http::error403();
}
include 'CurlMulti/CurlMulti.php';
include 'CurlMulti/MyCurl.php';
include 'phpQuery.php';
}
}
代码如下: 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;
}
}
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |