|
dedecms本身自带tag(keywords)提取成果,但分词总是不敷精确。固然,敷衍日更新十数篇且对搜刮引擎优化精确实验的用户来说,手工输入能更好的控制。但敷衍主题比力宽泛、内容更新量大的用户来说,dede split是不大完善的。
discuz在线分词是一个在线免费的提词接口。后有数十万中文论坛、supsite用户,敷衍语境、细胞词库的美满有更多的数据。 这个小步调是基于discuz在线分词批量更新已发内容的keywords(tag),假如数据量大(大于5万)的大概假造主机用户的话,最好情况搭到当地。速率会快一点。
利用要领,cms安装目次,新建c.php,拷入以下内容,本身对应编码用notepad设置相应gbk或utf8。运行 yourwebsite/c.php?id=1
$id = isset($id) && is_numeric($id) ? $id : 0;
for ($a=$id; $a
$row = $dsql->GetOne(” SELECT arc.title,tp.body FROM `@__archives` arc LEFT JOIN `@__addonarticle` tp ON arc.id=tp.aid where arc.id=’$a’ “);
if(is_array($row))
{
$title = $row['title'];
$body = $row['body'];
$keywords=zhgetkey($title.$body);
$dsql->ExecuteNoneQuery(” Update `@__archives` set keywords=’$keywords’ where id=’$a’ “);
echo $a.’:’.$keywords.’
’;
}
}
if ($a>80***00){break;}
echo “”;
echo “setTimeout(\”location.replace(‘c.php?id=$a’)\”,0)”;
echo “”;
function zhgetkey($contents){
$rows = strip_tags($contents);
$arr = array(‘ ‘,’ ‘,”\s”, “
”, “\n”, “\r”, “\t”, “>”, ““”, “””,”
”);
$qc_rows = str_replace($arr, ”, $rows);
if(strlen($qc_rows)>2400){
$qc_rows = substr($qc_rows, ’0′, ’2400′);
}
$data = @implode(”, file(“/related_kw.html?title=$qc_rows&ics=gbk&ocs=gbk”));
preg_match_all(“/(.*)A\[(.*)\]\](.*)>/”,$data, $out, PREG_SET_ORDER);
$key=”\;
for($i=0;$i
function cutstr_html($string, $sublen)
{
$string = strip_tags($string);
$string = preg_replace (‘/\n/is’, ”, $string);
$string = preg_replace (‘/ | /is’, ”, $string);
$string = preg_replace (‘/ /is’, ”, $string);
preg_match_all(“/[\x01-\x7f]|[\xc2-\xdf][\x80-\xbf]|\xe0[\xa0-\xbf][\x80-\xbf]|[\xe1-\xef][\x80-\xbf][\x80-\xbf]|\xf0[\x90-\xbf][\x80-\xbf][\x80-\xbf]|[\xf1-\xf7][\x80-\xbf][\x80-\xbf][\x80-\xbf]/”, $string, $t_string);
if(count($t_string[0]) – 0 > $sublen) $string = join(”, array_slice($t_string[0], 0, $sublen)).”…”;
else $string = join(”, array_slice($t_string[0], 0, $sublen));
return $string;
}
?>由:p2p网站 www.hudai.com 收集整理jnf发布 |
|