PHP 抓取新浪读书频道的小说并生成txt电子书的代码


Posted in PHP onDecember 18, 2009
/* Author: Yang Yu <yangyu@sina.cn> */ 
//想看什么电子书,先去新浪读书搜索,然后填入对应的参数即可 
//http://vip.book.sina.com.cn/ 
//电子书参数 
$array_book[0] = 38884; //小说id 
$array_book[1] = 22172; //章节起始id 
$array_book[2] = 32533; //章节结束id 
$array_book[3] = '中国特种部队生存实录:狼牙'; //小说名字 //匹配参数 
$title_pre = "/<h1>(.*?)<\/h1>/"; //标题部分 
$contents_pre = "/<div id=\"contTxt\" class=\"contTxt1\">(.*?)<\/div>/"; //内容部分 
//生成电子书 
for( $i = $array_book[1]; $i <= $array_book[2]; $i++){ 
$url = "http://vip.book.sina.com.cn/book/chapter_{$array_book[0]}_{$i}.html"; 
$html = file_get_contents($url); 
preg_match_all($title_pre,$html,$title); 
preg_match_all($contents_pre,$html,$contents); 
$fh = fopen($array_book[3].'.txt','a+'); 
$write_contents = $title[1][0]."\r\n".str_replace('</p>',"\r\n",str_replace('<p>',' ',$contents[1][0]))."\r\n"; 
if( fwrite($fh,$write_contents) ){ 
echo '第'.$i.'节抓取完毕< /br>'; 
} 
fclose($fh); 
}
PHP 相关文章推荐
ftp类(example.php)
Oct 09 PHP
第三节--定义一个类
Nov 16 PHP
安装APACHE
Jan 15 PHP
PHP不用第三变量交换2个变量的值的解决方法
Jun 02 PHP
php中将数组转成字符串并保存到数据库中的函数代码
Sep 29 PHP
在Win7 中为php扩展配置Xcache
Oct 08 PHP
php中JSON的使用与转换
Jan 14 PHP
php绘图之加载外部图片的方法
Jan 24 PHP
PHP中使用Memache作为进程锁的操作类分享
Mar 30 PHP
浅谈php中的循环while、do...while、for、foreach四种循环
Nov 05 PHP
php实时倒计时功能实现方法详解
Feb 27 PHP
php面向对象基础详解【星际争霸游戏案例】
Jan 23 PHP
PHP strtotime函数详解
Dec 18 #PHP
php 日期时间处理函数小结
Dec 18 #PHP
php 计算两个时间戳相隔的时间的函数(小时)
Dec 18 #PHP
php 来访国内外IP判断代码并实现页面跳转
Dec 18 #PHP
php jquery 实现新闻标签分类与无刷新分页
Dec 18 #PHP
PHP XML操作类DOMDocument
Dec 16 #PHP
PHP下编码转换函数mb_convert_encoding与iconv的使用说明
Dec 16 #PHP
You might like
php木马webshell扫描器代码
2012/01/25 PHP
PHP中array_merge和array相加的区别分析
2013/06/17 PHP
完美解决phpdoc导出文档中@package的warning及Error的错误
2016/05/17 PHP
图文详解PHP环境搭建教程
2016/07/16 PHP
深入了解PHP中的Array数组和foreach
2016/11/06 PHP
PHP使用 Imagick 扩展实现图片合成,圆角处理功能示例
2019/09/09 PHP
Prototype中dom对象方法汇总
2008/09/17 Javascript
JS 自定义带默认值的函数
2011/07/21 Javascript
Javascript实现真实字符串剩余字数提示的实例代码
2013/10/22 Javascript
分享JavaScript获取网页关闭与取消关闭的事件
2013/12/13 Javascript
jquery 隐藏与显示tr标签示例代码
2014/06/06 Javascript
js中回调函数的学习笔记
2014/07/31 Javascript
jQuery解析XML与传统JavaScript方法的差别实例分析
2015/03/05 Javascript
jQuery mobile在页面加载时添加加载中效果 document.ready 和window.onload执行顺序比较
2016/07/14 Javascript
使用nodejs中httpProxy代理时候出现404异常的解决方法
2016/08/15 NodeJs
关于两个jQuery(js)特效冲突的bug的解决办法
2016/09/04 Javascript
读Javascript高性能编程重点笔记
2016/12/21 Javascript
解决bootstrap下拉菜单点击立即隐藏bug的方法
2017/06/13 Javascript
详解webpack 入门总结和实践(按需异步加载,css单独打包,生成多个入口文件)
2017/06/20 Javascript
详解Webstorm 新建.vue文件支持高亮vue语法和es6语法
2017/10/26 Javascript
Bootstrap框架建立树形菜单(Tree)的实例代码
2017/10/30 Javascript
详解webpack4之splitchunksPlugin代码包分拆
2018/12/04 Javascript
详解a标签添加onclick事件的几种方式
2019/03/29 Javascript
在Vue中使用Echarts实例图的方法实例
2020/10/10 Javascript
python分析apache访问日志脚本分享
2015/02/26 Python
英国布鲁姆精品店:Bloom Boutique
2018/03/01 全球购物
有原因的手表:Flex Watches
2019/03/23 全球购物
苏格兰在线威士忌商店:The Whisky Barrel
2019/05/07 全球购物
计算机学生的自我评价分享
2014/02/18 职场文书
美术教师岗位职责
2014/03/18 职场文书
小学绿色学校申报材料
2014/08/23 职场文书
期末考试复习计划
2015/01/19 职场文书
盗窃案辩护词
2015/05/21 职场文书
工作经历证明范本
2015/06/15 职场文书
在职证明书模板
2015/06/15 职场文书
教师教育教学随笔
2015/08/15 职场文书