当前位置: 首页 > news >正文

做的网站怎么上线dedecms做门户网站

做的网站怎么上线,dedecms做门户网站,360免费建站怎么进不去,建设厅网站进不去关于火车头的百度翻译插件#xff0c;相信大家在火车头官网或网上都能找到相关代码#xff0c;百度翻译插件是PHP写的#xff0c;就一个PHP文件#xff0c;简单灵活#xff0c;不受火车头软件版本限制#xff0c;任何有PHP插件权限的火车头版本都可以使用。但是百度API翻…关于火车头的百度翻译插件相信大家在火车头官网或网上都能找到相关代码百度翻译插件是PHP写的就一个PHP文件简单灵活不受火车头软件版本限制任何有PHP插件权限的火车头版本都可以使用。但是百度API翻译有一个致命的缺陷就是不支持html代码翻译如果采集的字段包含html片段那翻译完全就错乱了没法正常使用下面给大家分享一个简易翻译html代码片段的方法。 ?phpdefine(CURL_TIMEOUT, 30); define(URL, http://api.fanyi.baidu.com/api/trans/vip/translate); define(APP_ID, ); //替换为您的APPID define(SEC_KEY, );//替换为您的密钥 define(FROM, en);//采集的源语言标识码默认为中文“zh” define(TO, zh);//翻译后的目标语言标识码默认翻译为英文“en”function translate($query) {$args array(q $query,appid APP_ID,salt rand(10000,99999),from FROM,to TO,);$args[sign] buildSign($query, APP_ID, $args[salt], SEC_KEY);$ret call(URL, $args);$ret json_decode($ret, true);if (isset($ret[error_code])) {switch ($ret[error_code]) {case 52003:return 错误代码.$ret[error_code].APP_ID不正确,请检查您填写的APP_ID是否和百度翻译开放平台申请的一致。;break;case 54001:return 错误代码.$ret[error_code].密钥不正确,请检查您填写的密钥是否和百度翻译开放平台申请的一致。;break;case 54000:return 错误代码.$ret[error_code].翻译内容为空请检查您的采集规则是否正确出现本错误可能软件未采集到内容。;break;case 54004:return 错误代码.$ret[error_code].余额不足您的免费字符已用完或余额不足请登陆百度翻译开放平台充值。;break;case 58001:return 错误代码.$ret[error_code].译文语言方向错误请检查您设置的目标语言标识码是否正确。;break;default:return 错误代码.$ret[error_code].不可预知的错误https://tpl.sryun.net;break;}}return $ret[trans_result][0][dst]; }function buildSign($query, $appID, $salt, $secKey) {$str $appID . $query . $salt . $secKey;$ret md5($str);return $ret; }function call($url, $argsnull, $methodpost, $testflag 0, $timeout CURL_TIMEOUT, $headersarray()) {$ret false;$i 0; while($ret false) {if($i 1)break;if($i 0) {sleep(1);}$ret callOnce($url, $args, $method, false, $timeout, $headers);$i;}return $ret; }function callOnce($url, $argsnull, $methodpost, $withCookie false, $timeout CURL_TIMEOUT, $headersarray()) {$ch curl_init();if($method post) {$data convert($args);curl_setopt($ch, CURLOPT_POSTFIELDS, $data);curl_setopt($ch, CURLOPT_POST, 1);}else {$data convert($args);if($data) {if(stripos($url, ?) 0) {$url . $data;}else {$url . ?$data;}}}curl_setopt($ch, CURLOPT_URL, $url);curl_setopt($ch, CURLOPT_TIMEOUT, $timeout);curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);if(!empty($headers)) {curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);}if($withCookie){curl_setopt($ch, CURLOPT_COOKIEJAR, $_COOKIE);}$r curl_exec($ch);curl_close($ch);return $r; }function convert($args) {$data ;if (is_array($args)){foreach ($args as $key$val){if (is_array($val)){foreach ($val as $k$v){$data . $key.[.$k.].rawurlencode($v).;}}else{$data .$key.rawurlencode($val).;}}return trim($data, );}return $args; }// function translateHTML($html) // { // // 使用正则表达式保护HTML标签不被翻译 // $html preg_replace_callback(/[^]|[^]/, function($matches) { // $segment $matches[0]; // if (preg_match(/[^]/, $segment)) { // // 这是一个HTML标签直接返回 // return $segment; // } else { // // 这是文本内容进行翻译 // return translate($segment); // } // }, $html);// return $html; // }//逐词逐句分割翻译-并不精准勉强刊用 // function translateHTML($html) // { // // 使用正则表达式保护HTML标签不被翻译 // $parts preg_split(/([^])/, $html, -1, PREG_SPLIT_DELIM_CAPTURE); // $translatedHTML ;// foreach ($parts as $part) { // if (preg_match(/[^]/, $part)) { // // 这是一个HTML标签直接附加 // $translatedHTML . $part; // } else { // // 这是文本内容进行逐词或逐句翻译 // $translatedHTML . translateTextBySentence($part); // } // }// return $translatedHTML; // }// function translateTextBySentence($text) { // // 使用句号分割句子 // $sentences preg_split(/([.!?])/, $text, -1, PREG_SPLIT_DELIM_CAPTURE); // $translated ; // foreach ($sentences as $sentence) { // if (trim($sentence) ! ) { // $translated . translate($sentence); // } // } // return $translated; // }//特定标签翻译 function translateContent($html) {$pattern /(div classariticle-body)(.*?)(br\s*\/?)/is;$html preg_replace_callback($pattern, function ($matches) {$contentToTranslate strip_tags($matches[2]);$translatedContent translate($contentToTranslate);return $matches[1] . $translatedContent . $matches[3];}, $html);return $html; }if($LabelArray[PageType]Save) {/*** 下面的内容需要根据火车头的采集规则进行修改一行为一个需要翻译的标签。* 后面的为采集到的原始标签前面的为翻译后的标签。* 这里的标签名必须和采集规则里的标签名一致否则无法翻译。*/$LabelArray[翻译的标题] translate($query $LabelArray[标题]);$LabelArray[翻译的内容] translateContent($query $LabelArray[内容]);$LabelArray[翻译的描述] translate($query $LabelArray[描述]); } echo serialize($LabelArray);?代码的关键就在于translateContent函数因为我采集的数据字段都是英文需要翻译为中文字段包含在标签div classariticle-body和br/标签之间所以我只需要翻译这之间的文本就可以翻译完成之后并将翻译结果插入回原始HTML中。 我注释掉的translateHTML函数也可以整段的翻译内容字段只是效果并不是很完美因为百度翻译不支持大段文本翻译只能是逐句分割翻译所以就弃用了大家可以私下进行调试修改。 我不知道火车头是否能完美的支持php类和扩展我测试的是不支持可能是我不熟悉也没深入研究不然翻译效果可能会更好。有需要的朋友试试吧
http://www.eeditor.cn/news/121539/

相关文章:

  • 网站建设 域名免费建设小说网站
  • 网站推广优化建设方案网站建设兼职挣多少钱
  • 长春做网站网站外贸网站如何选择域名
  • 网站做多个语言有什么好处常平做网站
  • 学做家常菜的网站有哪些营销网站的主题 定位 修改建议
  • 网站营销策略组合如何设计一个简单网页
  • 做任务得佣金的网站网页小游戏链接
  • 做网站入什么会计科目想自己做网站需要会什么
  • 网站各个阶段推广工商网上怎么申请注册公司
  • ie 常用网站五屏网站建设怎样
  • 企业网站素材中国一级建造师网官网
  • 做营销网站seo郑州全员核酸
  • 网上制作网站网站开发文档下载
  • 移动互联网时代欧莱雅全渠道营销模式研究石家庄seo
  • 教育加盟培训网站建设代理公司注册要提供什么资料
  • 网站兼容所有浏览器电脑建设网站服务器
  • 怎样大力开发公司网站建设搜索引擎排行榜前十名
  • 网站开发时间进度表购买服务器做网站
  • 课题组网站建设网站开发计算机语言的比较
  • 做买家秀的网站站酷网如何接单
  • 前端网站开发实例视频北京想象力网站建设公司
  • 商城网站制作多少钱宁波专业做网站的公司哪家好
  • 免费网站空间可上传网站建站历史查询
  • 深圳网站制作网络建设公司网络广告的类型
  • 深圳做网站外包公司有哪些企业小程序开发公司
  • 文登建设局网站网站建设费 账务处理
  • 做网站属于广告公司吗有效的网站建设
  • 中国建设银行遵义市分行网站网站如何做水晶按钮
  • 雷州网站地方门户系统 哪家好
  • 济南建设网站的公司蓬莱市住房和规划建设管理局网站