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 相关文章推荐
第九节--绑定
Nov 16 PHP
PHP 强制性文件下载功能的函数代码(任意文件格式)
May 26 PHP
pdo中使用参数化查询sql
Aug 11 PHP
深入理解:XML与对象的序列化与反序列化
Jun 08 PHP
php Xdebug的安装与使用详解
Jun 20 PHP
浅析虚拟主机服务器php fsockopen函数被禁用的解决办法
Aug 07 PHP
PHP取整函数:ceil,floor,round,intval的区别详细解析
Aug 31 PHP
php实现在线生成条形码示例分享(条形码生成器)
Dec 30 PHP
php通过ajax实现双击table修改内容
Apr 28 PHP
PHP原生函数一定好吗?
Dec 08 PHP
HTML中嵌入PHP的简单方法
Feb 16 PHP
PHP实现上一篇下一篇的方法实例总结
Sep 22 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模板的朋友必看的很多个顶级PHP模板引擎比较分析
2008/05/26 PHP
PHP setcookie设置Cookie用法(及设置无效的问题)
2011/07/13 PHP
php上传中文文件名乱码问题处理方案
2015/02/03 PHP
Docker搭建自己的PHP开发环境
2018/02/24 PHP
thinkPHP5框架接口写法简单示例
2019/08/05 PHP
javascript 拖动表格行实现代码
2011/05/05 Javascript
JS实现文字放大效果的方法
2015/03/03 Javascript
jQueryUI DatePicker 添加时分秒
2016/06/04 Javascript
JavaScript——DOM操作——Window.document对象详解
2016/07/14 Javascript
AngularJS Phonecat实例讲解
2016/11/21 Javascript
利用n工具轻松管理Node.js的版本
2017/04/21 Javascript
使用vue框架 Ajax获取数据列表并用BootStrap显示出来
2017/04/24 Javascript
微信小程序slider组件使用详解
2018/01/31 Javascript
解决element-ui中下拉菜单子选项click事件不触发的问题
2018/08/22 Javascript
vue.js实现的全选与全不选功能示例【基于elementui】
2018/12/03 Javascript
[57:50]DOTA2上海特级锦标赛主赛事日 - 4 胜者组决赛Secret VS Liquid第二局
2016/03/05 DOTA
[00:11]战神迅矛
2019/03/06 DOTA
浅谈pyhton学习中出现的各种问题(新手必看)
2017/05/17 Python
windows下python安装paramiko模块和pycrypto模块(简单三步)
2017/07/06 Python
实践Vim配置python开发环境
2018/07/02 Python
基于Python3.6中的OpenCV实现图片色彩空间的转换
2020/02/03 Python
捷克时尚网上商店:OTTO
2018/03/15 全球购物
蔻驰意大利官网:COACH意大利
2019/01/16 全球购物
递归计算如下递归函数的值(斐波拉契)
2012/02/04 面试题
工厂厂长的职责
2013/12/12 职场文书
学生打架检讨书大全
2014/01/23 职场文书
安全资金保障制度
2014/01/23 职场文书
小学中秋节活动方案
2014/02/06 职场文书
阿德的梦教学反思
2014/02/06 职场文书
西式婚礼主持词
2014/03/13 职场文书
公务员更新知识培训实施方案
2014/03/31 职场文书
2014年药品销售工作总结
2014/12/16 职场文书
生产车间主任岗位职责
2015/04/08 职场文书
python实现的人脸识别打卡系统
2021/05/08 Python
python ConfigParser库的使用及遇到的坑
2022/02/12 Python
Python获取指定日期是"星期几"的6种方法
2022/03/13 Python