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 相关文章推荐
有关 PHP 和 MySQL 时区的一点总结
Mar 26 PHP
PHP XML error parsing SOAP payload on line 1
Jun 17 PHP
PHP fopen 读取带中文URL地址的一点见解
Sep 25 PHP
基于HBase Thrift接口的一些使用问题及相关注意事项的详解
Jun 03 PHP
关于查看MSSQL 数据库 用户每个表 占用的空间大小
Jun 21 PHP
从wamp到xampp的升级之路
Apr 08 PHP
PHP 读取文本文件内容并分页显示
Jan 02 PHP
简单解析PHP程序的运行流程
Jun 23 PHP
基于PHP制作验证码
Oct 12 PHP
PHP使用GD库制作验证码的方法(点击验证码或看不清会刷新验证码)
Aug 15 PHP
PHP有序表查找之插值查找算法示例
Feb 10 PHP
PHP连接MySQL数据库的三种方式实例分析【mysql、mysqli、pdo】
Nov 04 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实现ODBC数据分页显示一例
2006/10/09 PHP
单点登录 Ucenter示例分析
2013/10/29 PHP
PHP面向对象之工作单元(实例讲解)
2017/06/26 PHP
php 多进程编程父进程的阻塞与非阻塞实例分析
2020/02/22 PHP
jQuery-Tools-overlay 使用介绍
2012/07/14 Javascript
JS中不为人知的五种声明Number的方式简要概述
2013/02/22 Javascript
Jquery仿淘宝京东多条件筛选可自行结合ajax加载示例
2013/08/28 Javascript
javascript实现平滑无缝滚动
2020/08/09 Javascript
AngularJS HTML DOM详解及示例代码
2016/08/17 Javascript
javascript中Date对象的使用总结
2016/11/21 Javascript
javascript动画系列之模拟滚动条
2016/12/13 Javascript
ECMAScript6 新特性范例大全
2017/03/24 Javascript
Angular2使用Guard和Resolve进行验证和权限控制
2017/04/24 Javascript
详解基于Vue cli生成的Vue项目的webpack4升级
2018/06/19 Javascript
Nuxt.js之自动路由原理的实现方法
2018/11/21 Javascript
微信小程序转发事件实现解析
2019/10/22 Javascript
JS访问对象两种方式区别解析
2020/08/29 Javascript
Python实现将目录中TXT合并成一个大TXT文件的方法
2015/07/15 Python
简介Django中内置的一些中间件
2015/07/24 Python
python监控文件并且发送告警邮件
2018/06/21 Python
python根据文章标题内容自动生成摘要的实例
2019/02/21 Python
python与字符编码问题
2019/05/24 Python
django ManyToManyField多对多关系的实例详解
2019/08/09 Python
pandas按行按列遍历Dataframe的几种方式
2019/10/23 Python
Python实现图片裁剪的两种方式(Pillow和OpenCV)
2019/10/30 Python
python3实现单目标粒子群算法
2019/11/14 Python
使用OpenCV circle函数图像上画圆的示例代码
2019/12/27 Python
巴西图书和电子产品购物网站:Saraiva
2017/06/07 全球购物
武汉英思工程科技有限公司&ndash;ORACLE面试测试题目
2012/04/30 面试题
毕业典礼演讲稿
2014/05/13 职场文书
个人四风问题对照检查材料
2014/09/26 职场文书
新教师2015年度工作总结
2015/07/22 职场文书
《比尾巴》教学反思
2016/02/24 职场文书
[有人@你]你有一封绿色倡议书,请查收!
2019/07/18 职场文书
《童年》读后感(三篇)
2019/08/27 职场文书
利用Python网络爬虫爬取各大音乐评论的代码
2021/04/13 Python