/** * dict.class.php 采集百度詞典翻譯內(nèi)容 * * @copyright (C) 2014 widuu * @license http://www.widuu.com * @lastmodify 2014-2-15 */ header("content-type:text/html;charset=utf8"); class Dict{ private $word; //顯示的條數(shù) private static $num = 10; public function __construct(){} /** * 公用返回百度采集數(shù)據(jù)的方法 * @param string 英文單詞 * retun array( * symbol" => 音標(biāo) * "pro" => 發(fā)音 * "example"=> 例句 * "explain"=> 簡明釋義 * "synonym"=> 同反義詞 * "phrase" => 短語數(shù)組 * ) * */ public function content($word){ $this -> word = $word; $symbol = $this -> Pronounced(); $pro = $this->getSay(); $example = $this -> getExample(); $explain = $this -> getExplain(); $synonym = $this -> getSynonym(); $phrase = $this -> getPhrase(); $result = array( "symbol" => $symbol, //音標(biāo) "pro" => $pro, //發(fā)音 "example"=> $example, //例句 "explain"=> $explain, //簡明釋義 "synonym"=> $synonym, //同反義詞 "phrase" => $phrase //短語數(shù)組 ); return $result; } /** * 遠(yuǎn)程獲取百度翻譯內(nèi)容 * get function curl * retun string * */ private function getContent(){ $useragent = "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:23.0) Gecko/20100101 Firefox/23.0"; $ch = curl_init(); $url = "http://dict.baidu.com/s?wd=".$this->word; curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_USERAGENT,$useragent); curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($ch, CURLOPT_HTTPGET, 1); curl_setopt($ch, CURLOPT_AUTOREFERER,1); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_TIMEOUT, 30); $result = curl_exec($ch); if (curl_errno($curl)) { echo 'Errno'.curl_error($curl); } curl_close($ch); return $result; } /** * 獲取百度翻譯發(fā)音 * retun array(英,美) * */ private function Pronounced(){ $data = $this -> getContent(); preg_match_all("/\"EN\-US\"\>(.*)\<\/b\>/Ui",$data,$pronounced); return array( 'en' => $pronounced[1][0], 'us' => $pronounced[1][1] ); } /** * 獲取百度翻譯發(fā)音 * return array(英,美) * */ private function getSay(){ $data = $this -> getContent(); preg_match_all("/url=\"(.*)\"/Ui",$data,$pronounced); return array( 'en' => $pronounced[1][0], 'us' => $pronounced[1][1] ); } /** * 獲取百度翻譯例句 * return array() 多維數(shù)組 例句 * */ private function getExample(){ $str = ""; $data = $this -> getContent(); preg_match_all("/var example_data = (.*)\]\;/Us",$data,$example); $data1 = "[[[".ltrim($example[1][0],"["); $data2 = explode("[[[",$data1); $num = count(array_filter($data2)); foreach($data2 as $key => $value){ $data3 = explode("[[","[[".$value); foreach ($data3 as $k => $v) { preg_match_all("/\[\"(.*)\",/Us","[".$v, $match); if(!empty($match[1])){ $str .= implode($match[1]," ")."@"; } } } $data4 = trim($str,"@"); $data5 = explode("@", $data4); $result = array_chunk($data5, 2); return $result; } /** * 獲取簡明釋義 * return array (x => "詞性",b => "附屬") * **/ private function getExplain(){ $data = $this -> getContent(); preg_match_all("/id\=\"en\-simple\-means\"\>(.*)\
\(?P (?P 創(chuàng)新互聯(lián)建站專注于嘉魚網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠為您提供嘉魚營銷型網(wǎng)站建設(shè),嘉魚網(wǎng)站制作、嘉魚網(wǎng)頁設(shè)計(jì)、嘉魚網(wǎng)站官網(wǎng)定制、小程序設(shè)計(jì)服務(wù),打造嘉魚網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供嘉魚網(wǎng)站排名全網(wǎng)營銷落地服務(wù)。(?
標(biāo)題名稱:php查詞采集器
網(wǎng)頁鏈接:http://weahome.cn/article/pihpjo.html
其他資訊