凤网fcms内容管理系统
get.php 抓取框架,对网页内容的分析处理并进行相关替换
std.php 通用正则
news_67_com.php 对http://news.67.com 的抓取分析器
先抓列表,再抓内容页。
还欠缺监控,统计,错误处理功能。个人觉得还是比较好玩。
- include_once dirname(__FILE__) . '/std.php';
- $site = array(
- 'aname' => '中国娱乐网',
- 'domain' => 'news.67.com',
- 'dirname' => '目录名称,用于匹配基于目录不同的正文',
- 'gettype' => 'default',
- //获取主文件
- 'creg' => '/(?si)(.*?)\<\!--文章 end-->/',
- 'code' => 'utf-8',
- 'sub' => '获取子目录正则',
- 'content' => 'tag1',
- 'img_upload'=> array('tag1' => ''),
- //下一页
- 'reg_next' => '/(?is)下一页\>\><\/a>/',
- 'key0' => '/(?is)/',
- 'key0_ap' => array(array(',', '|'), ' '),
- 'tag0' => '/(?is)
(https://img.gxlcms.com/[^<^>]*?)<\/h1>/', - 'tag0_arp' => array(
- array(
- '/(?is)\(组图\)/',
- '/(?is)\(图\)/',
- '/(?is)\(图\.\./',
- '/(?is)\(组图\.\./',
- '/(?is)\./',
- '/(?is)(《|》)/',
- ),
- array(
- '', '', '', '', '', '',
- )
- ),
- 'tag1' => '/(?is)(.*?)/',
- 'tag1_brp' => array(
- array(
- '/(?is)(.*?)/',
- '/(?is)\(.*?\)/',
- '/(?is)\s*
.*?(.*?)<\/p>\s*/',- '/(?is)\s*
\s*/', - '/(?is)\s*
\s*/', - '/(?is) /',
- '/(?is)
/', - '/(?is)\s*
\s*/', - '/(?is)\s*
\s*/', - '/(?is)\s*\s*/',
- '/(?is)\s*<\/center>\s*/',
- '/(?is)\s*
\s*/', - ),
- array(
- '', '', '', '
', ' ', '', '', ' ', ' ', ' ', ' ', '' - ),
- ),
- 'tag1_arp' => array(
- array(
- '/(?is)
<\/p>/', - '/(?is)<\/strong>/'
- ),
- array(
- '', ''
- ),
- ),
- 'strip' => array('tag1' => ''),
- 'tag2' => '/(?is)导读:\s*(.*?)\s*<\/div>/',
- 'tag2_arp' => array(
- array(
- '/(?is) /'
- ),
- array(
- ''
- ),
- ),
- 'tag3' => '/(?is)(中国娱乐网)/',
- 'tag4' => '/(?is)日期:(\d+-\d+-\d+ \d+:\d+:\d+).*?<\/div>/',
- );
- $map = array(
- 'tag' => 'key0',
- 'title' => 'tag0',
- 'content' => 'tag1',
- 'summary' => 'tag2',
- 'source' => 'tag3',
- 'pub_date' => 'tag4',
- );
- $site_list = array(
- 'aname' => '中国娱乐网',
- 'domain' => 'www.67.com',
- 'gettype' => 'default',
- 'creg' => '/(?si)(.*?)/',
- 'code' => 'gbk',
- 'reg_next' => '/(?si)
- 下一页<\/a><\/li>/',
- //链接
- 'tag0' => '/(?is).*?https://img.gxlcms.com/[^<^>]*?<\/a>.*?<\/div>/',
- //标题
- 'tag1' => '/(?is).*?(https://img.gxlcms.com/[^<^>]*?)<\/a>.*?<\/div>/',
- 'tag1_arp' => array(
- array(
- '/(?is)\(组图\)/',
- '/(?is)\(图\)/',
- '/(?is)\(图\.\./',
- '/(?is)\(组图\.\./',
- '/(?is)\./',
- '/(?is)(《|》)/',
- ),
- array(
- '', '', '', '', '', '',
- )
- ),
- );
- $list_map = array(
- 'url' => 'tag0',
- 'title' => 'tag1',
- );
- $site_list_sub = array();
- global $std;
- $std = array(
- 'url' => '[0-9a-zA-Z\.\:\-\/%_#;&]+',
- 'img' => '/(?is)/',
- );
- /**
- * test.php
- *
- * @author xzfred
- * @copyright 2009 fengone.com
- * @created 2010-12-07 .
- * @version $Id: php.php 3 2008-10-10 07:49:21Z fred $
- * SVNPath $HeadURL: http://192.168.0.16/svn/vim/skeletons/php.php $
- */
- /*
- include_once "std.php";
- include_once "lady_163_com.php";
- */
- include_once $GLOBALS['g_dir_core'] . "get.php";
- //================================================================================
- include_once DIR_HOST_TAG . '/tuku_ent_china_com.php';
- $obj = new FcHtmlParse($site);
- $c = $obj->parse(file_get_contents("http://tuku.ent.china.com/fun/html/2011-08-23/181703.xml"));
- echo "\n\n\n ===================\n";
- echo $c['field']['tag1'][0];
- echo "\n\n\n ===================\n";
- var_dump($c);
- exit();
- //列表测试
- $obj = new FcHtmlParse($site_list);
- $c = $obj->parse(file_get_contents("http://tuku.ent.china.com/fun/html/3569_1.html"));
- var_dump($c);
- exit();
- /*
- $obj = new FcHtmlGet($site);
- $c = $obj->getPage('http://star.pclady.com.cn/entertainment/ss/1106/703240.html');
- var_dump($c);
- $obj = new FcHtmlGet($site);
- $c = $obj->getPage('http://star.pclady.com.cn/entertainment/ss/1106/703240.html');
- var_dump($c);
- $obj = new FcHtmlParse($site);
- $img_obj = new FcHtmlImgUpload($site);
- $data = file_get_contents("e:/b.html");
- $c = $obj->parse($data);
- $ic = $img_obj->upload($c['tag']['tag1'][0]);
- var_dump($ic);
- $data = file_get_contents("e:/a.html");
- $c = $obj->parse($data);
- $ic = $img_obj->upload($c['tag']['tag1'][0]);
- var_dump($ic);
- */
- //var_dump($c['tag']['tag1']);
- include_once $GLOBALS['g_dir_core'] . 'host/std.php';
- $site = array(
- 'aname' => '中华网娱乐图库',
- 'domain' => 'tuku.ent.china.com',
- 'dirname' => '目录名称,用于匹配基于目录不同的正文',
- 'gettype' => 'default',
- //获取主文件
- 'creg' => '/(?si)(
.*?<\/list>)/',- 'code' => 'utf-8',
- 'sub' => '获取子目录正则',
- 'content' => 'tag1',
- 'img_upload'=> array('tag1' => ''),
- //下一页
- 'reg_next' => '/(?is)下一页<\/a>/',
- 'key0' => '/(?is)/',
- 'key0_ap' => array(array(',', '|'), ' '),
- 'tag0' => '/(?is)title="(https://img.gxlcms.com/[^"]*?)"/',
- 'tag0_arp' => array(
- array(
- '/(?is)\(图\)/',
- '/(?is)\"/',
- '/(?is)独家:/',
- '/(?is)独家:/',
- '/(?is)(《|》)/',
- ),
- array(
- '', '', '', '', '',
- )
- ),
- 'tag1' => '/(?is)
(.*?)<\/list>/',- 'tag1_brp' => array(
- array(
- '/(?is)\s*\s*/'
- ),
- array(
- '
-
https://www.gxlcms.com/$1 -
$3 ' - )
- ),
- 'tag1_arp' => array(
- array(
- '/(?is)
(https://img.gxlcms.com/[^<^>]*?)<\/p>/', - '/(?is)\<br\/\>/',
- ),
- array(
- '
https://www.gxlcms.com/$1 ', - '',
- )
- ),
- 'strip' => array('tag1' => ''),
- //网名
- 'tag3' => '/(?is)(https://img.gxlcms.com/[^<^>]*?)<\/span>/',
- 'tag4' => '/(?is)(中华网)/'
- );
- $map = array(
- 'tag' => 'key0',
- 'title' => 'tag0',
- 'content' => 'tag1',
- 'author' => 'tag3',
- 'source' => 'tag4'
- );
- $site_list = array(
- 'aname' => '中华网娱乐图库',
- 'domain' => 'tuku.ent.china.com',
- 'gettype' => 'default',
- 'creg' => '/(?si)(.*?)<\/div>/',
- 'code' => 'utf-8',
- 'reg_next' => '/(?si)
- 下一页<\/a><\/li>/',
- //链接
- 'tag0' => '/(?is).*?<\/span>https://img.gxlcms.com/[^<^>]*?<\/a><\/div>/',
- 'tag0_brp' => array(
- array(
- '/(?is)\.htm/',
- ),
- array(
- '.xml'
- )
- ),
- //标题
- 'tag1' => '/(?is).*?<\/span>(https://img.gxlcms.com/[^<^>]*?)<\/a><\/div>/',
- 'tag1_arp' => array(
- array(
- '/(?is)\(图\)/',
- '/(?is)\"/',
- '/(?is)独家:/',
- '/(?is)独家:/',
- '/(?is)(《|》)/',
- ),
- array(
- '', '', '', '', '',
- )
- ),
- );
- $list_map = array(
- 'url' => 'tag0',
- 'title' => 'tag1',
- );
- $site_list_sub = array();
|