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

Lark ·
更新时间:2024-09-21
· 889 次阅读

代码如下:
/* 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 pthreads多线程的安装与使用使用pthreads实现真正的PHP多线程(需PHP5.3以上版本)php结合curl实现多线程抓取PHP使用CURL实现多线程抓取网页PHP多线程抓取网页实现代码php利用curl抓取新浪微博内容示例PHP CURL模拟登录新浪微博抓取页面内容 基于EaglePHP框架开发PHP实现采集抓取淘宝网单个商品信息PHP实现抓取HTTPS内容php使用pthreads v3多线程实现抓取新浪新闻信息操作示例



新浪 小说 读书 PHP

需要 登录 后方可回复, 如果你还没有账号请 注册新账号