2014年1月9日木曜日

Extract Function で項目抽出!!

Extract Functionで項目抽出してみます。
WS.WS.CRAWL_REGEXP_TO_QUAD関数と、
WS.WS.CRAWL_LINK_EXTRACT関数の中身は、
別記事に書いてあります。

create procedure WS.WS.SITEMAP_BB_PARSE (
  in _host varchar,
  in _url varchar,
  in _root varchar,
  inout _content varchar, 
  in _c_type varchar := null,
  in lev int := 0)
{
dbg_obj_print('sitemap_bb_parse by hodade v3');
dbg_obj_print('_host='||_host);
dbg_obj_print('_url='||_url);
dbg_obj_print('_root='||_root);
dbg_obj_print('_c_type='||_c_type);
dbg_obj_print('lev='||lev);
declare graph varchar;
graph := 'http://'||_host;
declare subject varchar;
subject := _url;
--#################
-- ボキャブラリ設定
--#################
WS.WS.CRAWL_REGEXP_TO_QUAD(
  _content,
  '<title>(.+?)</title>',
  graph,
  subject,
  'title'
);
WS.WS.CRAWL_REGEXP_TO_QUAD(
  _content,
  '<th width="100">.+?</th><td>(.+?)</td>',
  graph,
  subject,
  'address'
);
--##############
-- リンク抽出
--##############
WS.WS.CRAWL_LINK_EXTRACT(
  _content,
  '<a .*?href="(.+?/spot/.*?)".*?>',
  _host,
  _root
);
  commit work;
}

0 件のコメント:

コメントを投稿