php 采集書(shū)并合成txt格式的實(shí)現(xiàn)代碼
更新時(shí)間:2009年03月01日 23:15:53 作者:
記得上次有過(guò)一個(gè)叫采集后的處理這個(gè)就是它的升級(jí)版本 連采再處理,合成一本書(shū)txt的。
<?php
/**
* @name 采集書(shū).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');
}
?>
/**
* @name 采集書(shū).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讀取txt文本文件并分頁(yè)顯示的方法
- 淺析php fwrite寫入txt文件的時(shí)候用 \r\n不能換行的問(wèn)題
- php 批量生成html,txt文件的實(shí)現(xiàn)代碼
- PHP 處理TXT文件(打開(kāi)/關(guān)閉/檢查/讀取)
- php讀取txt文件組成SQL并插入數(shù)據(jù)庫(kù)的代碼(原創(chuàng)自Zjmainstay)
- PHP讀取txt文件的內(nèi)容并賦值給數(shù)組的代碼
- PHP 讀取文件內(nèi)容代碼(txt,js等)
- PHP逐行輸出(ob_flush與flush的組合)
- php逐行讀取txt文件寫入數(shù)組的方法
相關(guān)文章
php面試實(shí)現(xiàn)反射注入的詳細(xì)方法
在本篇文章里小編給大家整理了關(guān)于php面試怎么實(shí)現(xiàn)反射注入的相關(guān)知識(shí)點(diǎn),需要的朋友們學(xué)習(xí)下。2019-09-09
如何使用PHP對(duì)象POPO來(lái)優(yōu)化你的代碼
如果您熟悉Java,可能您已經(jīng)知道POJO(普通Java類). 因?yàn)镻OJO這個(gè)詞最早是由Martin Fowler、Rebecca Parsons 和 Josh MacKenzie 于 2000 年在 Java 編程語(yǔ)言上創(chuàng)造的。 POJO 使我們更容易理解類對(duì)象中的數(shù)據(jù)結(jié)構(gòu)類型。本文將詳細(xì)介紹如何使用PHP對(duì)象POPO來(lái)優(yōu)化你的代碼。2021-05-05
解析使用substr截取UTF-8中文字符串出現(xiàn)亂碼的問(wèn)題
本篇文章是對(duì)使用substr截取UTF-8中文字符串出現(xiàn)亂碼的問(wèn)題進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-06-06
數(shù)據(jù)結(jié)構(gòu)之利用PHP實(shí)現(xiàn)二分搜索樹(shù)
這篇文章主要給大家介紹了關(guān)于數(shù)據(jù)結(jié)構(gòu)之利用PHP實(shí)現(xiàn)二分搜索樹(shù)的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-10-10
用sql命令修改數(shù)據(jù)表中的一個(gè)字段為非空(not null)的語(yǔ)句
今天群里的一個(gè)朋友問(wèn)如何用sql命令修改數(shù)據(jù)表中的一個(gè)字段為非空(not null),經(jīng)常測(cè)試下面的代碼即可。2010-06-06
PHP操作MongoDB實(shí)現(xiàn)增刪改查功能【附php7操作MongoDB方法】
這篇文章主要介紹了PHP操作MongoDB實(shí)現(xiàn)增刪改查功能,結(jié)合實(shí)例形式總結(jié)分析了php操作MongoDB的常用技巧,并附帶php7操作MongoDB方法,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2018-04-04
php使用date和strtotime函數(shù)輸出指定日期的方法
這篇文章主要介紹了php使用date和strtotime函數(shù)輸出指定日期的方法,實(shí)例匯總了生成各種日期格式的方法,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2014-11-11

