找回密码
 开放注册

QQ登录

只需一步,快速开始

微信登录

微信扫码,快速开始

搜索
查看: 382|回复: 0

基于discuz在线分词批量优化Dedecms文章关键词

[复制链接]

1575

主题

-1264

回帖

682

牛毛

一级牛人

积分
682
发表于 2014-10-24 10:53:29 | 显示全部楼层 |阅读模式 来自 江西省宜春市
 
          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发布
您需要登录后才可以回帖 登录 | 开放注册

本版积分规则

帮助|Archiver|小黑屋|通信管理局专项备案号:[2008]238号|NB5用户社区 ( 皖ICP备08004151号;皖公网安备34010402700514号 )

GMT+8, 2025-1-12 18:54 , Processed in 0.114443 second(s), 23 queries , Yac On.

Powered by Discuz! X3.5

快速回复 返回顶部 返回列表