php 采集书并合成txt格式的实现代码

 更新时间:2009年03月01日 23:15:53   作者:  
记得上次有过一个叫采集后的处理这个就是它的升级版本 连采再处理,合成一本书txt的。
<?php
/**
* @name 采集书.php
* @date Sun Mar 01 22:48:02 CST 2009
* @copyright 马永占(MyZ)
* @author 马永占(MyZ)
* @link http://blog.csdn.net/mayongzhan/
*/
//header('Content-Type:text/html;charset=utf8');
header('Content-Type:text/html;charset=gb2312');
error_reporting(E_ALL);
date_default_timezone_set('Asia/Shanghai');
set_time_limit(0);
function writer($content,$url)
{
$fp = fopen($url, 'ab');
fwrite($fp, $content);
fclose($fp);
}
$folder = '2'; //文件夹
$book_base_url = 'xxxxxxxxxxxxxxxxxxxxx';
$book_url = 'yyyyyyyyyyyyy.html';
$main = file_get_contents($book_base_url.$book_url);
preg_match_all('/chapter_.*?\.html/', $main, $pages);
$pages = array_unique($pages[0]);
foreach ($pages as $value) {
writer(file_get_contents($book_base_url.$value), './'.$folder.'/'.$value.'.txt');
$str = file_get_contents('./'.$folder.'/'.$value.'.txt');
//print_r($str);
preg_match("/(<h1>)(.*?)(<\/h1>)(.*?)(<div id=\"contTxt\" class=\"contTxt1\">)(.*?)(<\/div>)/s",$str,$arr);
//print_r($arr);die();
$arr[6] = preg_replace("/(<span[^>]+>.*?<a[^>]+>)(.*?)(<\/a><\/span>)/s","$2",preg_replace("/<p>|<\/p>/","\r\n",$arr[6]));
$result = "\r\n------------------------------------------------\r\n------------------------------------------------\r\n------------------------------------------------\r\n----------------".$arr[2]."\r\n------------------------------------------------\r\n------------------------------------------------\r\n------------------------------------------------\r\n".$arr[6];
writer($result, './'.$folder.'/new.txt');
}
?>

相关文章

  • php面试实现反射注入的详细方法

    php面试实现反射注入的详细方法

    在本篇文章里小编给大家整理了关于php面试怎么实现反射注入的相关知识点,需要的朋友们学习下。
    2019-09-09
  • 如何使用PHP对象POPO来优化你的代码

    如何使用PHP对象POPO来优化你的代码

    如果您熟悉Java,可能您已经知道POJO(普通Java类). 因为POJO这个词最早是由Martin Fowler、Rebecca Parsons 和 Josh MacKenzie 于 2000 年在 Java 编程语言上创造的。 POJO 使我们更容易理解类对象中的数据结构类型。本文将详细介绍如何使用PHP对象POPO来优化你的代码。
    2021-05-05
  • 解析使用substr截取UTF-8中文字符串出现乱码的问题

    解析使用substr截取UTF-8中文字符串出现乱码的问题

    本篇文章是对使用substr截取UTF-8中文字符串出现乱码的问题进行了详细的分析介绍,需要的朋友参考下
    2013-06-06
  • 数据结构之利用PHP实现二分搜索树

    数据结构之利用PHP实现二分搜索树

    这篇文章主要给大家介绍了关于数据结构之利用PHP实现二分搜索树的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-10-10
  • php计算年龄精准到年月日

    php计算年龄精准到年月日

    这篇文章主要介绍了php计算年龄精准到年月日的方法,涉及php操作日期与字符串的相关技巧,非常简单实用,需要的朋友可以参考下
    2015-11-11
  • 用sql命令修改数据表中的一个字段为非空(not null)的语句

    用sql命令修改数据表中的一个字段为非空(not null)的语句

    今天群里的一个朋友问如何用sql命令修改数据表中的一个字段为非空(not null),经常测试下面的代码即可。
    2010-06-06
  • PHP操作MongoDB实现增删改查功能【附php7操作MongoDB方法】

    PHP操作MongoDB实现增删改查功能【附php7操作MongoDB方法】

    这篇文章主要介绍了PHP操作MongoDB实现增删改查功能,结合实例形式总结分析了php操作MongoDB的常用技巧,并附带php7操作MongoDB方法,具有一定参考借鉴价值,需要的朋友可以参考下
    2018-04-04
  • 利用PHPExcel导出excel文件的方法详解

    利用PHPExcel导出excel文件的方法详解

    PHPExcel是一款非常强大的PHP操作EXCEL库,使用PHPExcel可以帮助我们简单、高效实现从Excel读取Excel的数据和导出数据到Excel。本文为大家介绍了PHPExcel导出excel文件的用法,需要的可以参考一下
    2022-08-08
  • php使用date和strtotime函数输出指定日期的方法

    php使用date和strtotime函数输出指定日期的方法

    这篇文章主要介绍了php使用date和strtotime函数输出指定日期的方法,实例汇总了生成各种日期格式的方法,非常具有实用价值,需要的朋友可以参考下
    2014-11-11
  • php给图片添加文字水印方法汇总

    php给图片添加文字水印方法汇总

    在php中要给图片加水印我们需要给php安装GD库了,这里我们不介绍GD库安装,只介绍怎么利用php给图片添加文字水印的4种方法的汇总。有需要的小伙伴可以参考下。
    2015-08-08

最新评论