PHP 抓取新浪读书频道的小说并生成txt电子书的代码
2015-01-24信息快讯网
/* Author: Yang Yu <[email protected]> */ //想看什么电子书,先去新浪读书搜索,然后填入对应的参数即可 //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); }