程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> 微信公眾平台開發嘗試,微信公眾平台

微信公眾平台開發嘗試,微信公眾平台

編輯:關於PHP編程

微信公眾平台開發嘗試,微信公眾平台


最近看了一篇博文是說微信公眾平台搭建,於是心血來潮自己也嘗試了一下。

1.不用多講了,申請微信公眾號,對於個人來說,只能申請訂閱號。

可以看這個鏈接的文章,http://jingyan.baidu.com/article/414eccf6011ff06b431f0aec.html

2.采用的是Sina App Engine來脫管服務,就要申請sae開發者權限。

再看這個鏈接http://jingyan.baidu.com/article/4f7d57129a60531a20192796.html

3.在sae上新建一個應用

我選擇的PHP,PHP幾乎免費。Java應用的話,有點小貴了。

雖然沒有學過PHP,摸著石頭過河吧。

將php代碼上傳後,就有一個可調試的url了,PHP代碼後面上。

4.再在微信公眾平台中的開發者中心(這個要經過一段時間的審核),填入一下內容即可

5.然後就是對接數據了,為了測試,我對接的是圖靈機器人的數據、12306和百度地圖API

12306是為了查余票和車次,百度地圖API是為了查天氣預報、圖靈機器人見鏈接:http://www.tuling123.com/openapi/

php代碼如下,本人不是搞PHP的,因此只能在網上拷貝了,如有復制,純屬巧合。

<?php define("TOKEN", "weixin"); Session_start(); Session_Register("kw"); $wechatObj = new wechatCallbackapiTest(); require_once("train.php"); $tqTpl = "<xml> <ToUserName><![CDATA[%s]]></ToUserName> <FromUserName><![CDATA[%s]]></FromUserName> <CreateTime>%s</CreateTime> <MsgType><![CDATA[%s]]></MsgType> <ArticleCount>5</ArticleCount> <Articles> <item> <Title><![CDATA[%s]]></Title> <Description><![CDATA[%s]]></Description> <PicUrl><![CDATA[%s]]></PicUrl> <Url><![CDATA[%s]]></Url> </item> <item> <Title><![CDATA[%s]]></Title> <Description><![CDATA[%s]]></Description> <PicUrl><![CDATA[%s]]></PicUrl> <Url><![CDATA[%s]]></Url> </item> <item> <Title><![CDATA[%s]]></Title> <Description><![CDATA[%s]]></Description> <PicUrl><![CDATA[%s]]></PicUrl> <Url><![CDATA[%s]]></Url> </item> <item> <Title><![CDATA[%s]]></Title> <Description><![CDATA[%s]]></Description> <PicUrl><![CDATA[%s]]></PicUrl> <Url><![CDATA[%s]]></Url> </item> <item> <Title><![CDATA[%s]]></Title> <Description><![CDATA[%s]]></Description> <PicUrl><![CDATA[%s]]></PicUrl> <Url><![CDATA[%s]]></Url> </item> <item> <Title><![CDATA[%s]]></Title> <Description><![CDATA[%s]]></Description> <PicUrl><![CDATA[%s]]></PicUrl> <Url><![CDATA[%s]]></Url> </item> </Articles> </xml> "; if (!isset($_GET['echostr'])) { $wechatObj->responseMsg(); }else{ $wechatObj->valid(); } class wechatCallbackapiTest { //驗證簽名 public function valid() { $echoStr = $_GET["echostr"]; $signature = $_GET["signature"]; $timestamp = $_GET["timestamp"]; $nonce = $_GET["nonce"]; $token = TOKEN; $tmpArr = array($token, $timestamp, $nonce); sort($tmpArr); $tmpStr = implode($tmpArr); $tmpStr = sha1($tmpStr); if($tmpStr == $signature){ echo $echoStr; exit; } } //響應消息 public function responseMsg() { $postStr = $GLOBALS["HTTP_RAW_POST_DATA"]; if (!empty($postStr)){ $this->logger("R ".$postStr); $postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA); $RX_TYPE = trim($postObj->MsgType); //消息類型分離 switch ($RX_TYPE) { case "event": $result = $this->receiveEvent($postObj); break; case "text": $result = $this->receiveTulingText($postObj); break; case "image": $result = $this->receiveImage($postObj); break; case "location": $result = $this->receiveLocation($postObj); break; case "voice": $result = $this->receiveVoice($postObj); break; case "video": $result = $this->receiveVideo($postObj); break; case "link": $result = $this->receiveLink($postObj); break; default: $result = "unknown msg type: ".$RX_TYPE; break; } $this->logger("T ".$result); echo $result; }else { echo ""; exit; } } //接收事件消息 private function receiveEvent($object) { $content = ""; switch ($object->Event) { case "subscribe": $content = "歡迎關注TomSnail "; $content .= (!empty($object->EventKey))?("\n來自二維碼場景 ".str_replace("qrscene_","",$object->EventKey)):""; break; case "unsubscribe": $content = "取消關注"; break; case "SCAN": $content = "掃描場景 ".$object->EventKey; break; case "CLICK": switch ($object->EventKey) { case "COMPANY": $content = array(); $content[] = array("Title"=>"多圖文1標題", "Description"=>"", "PicUrl"=>"http://discuz.comli.com/weixin/weather/icon/cartoon.jpg", "Url" =>"http://m.cnblogs.com/?u=txw1958"); break; default: $content = "點擊菜單:".$object->EventKey; break; } break; case "LOCATION": $content = "上傳位置:緯度 ".$object->Latitude.";經度 ".$object->Longitude; break; case "VIEW": $content = "跳轉鏈接 ".$object->EventKey; break; case "MASSSENDJOBFINISH": $content = "消息ID:".$object->MsgID.",結果:".$object->Status.",粉絲數:".$object->TotalCount.",過濾:".$object->FilterCount.",發送成功:".$object->SentCount.",發送失敗:".$object->ErrorCount; break; default: $content = "receive a new event: ".$object->Event; break; } if(is_array($content)){ if (isset($content[0])){ $result = $this->transmitNews($object, $content); }else if (isset($content['MusicUrl'])){ $result = $this->transmitMusic($object, $content); } }else{ $result = $this->transmitText($object, $content); } return $result; } private function receiveTulingText($object){ try{ $keyword = trim($object->Content); $userid = trim($object->FromUserName); $apiKey = "*******************************"; $apiURL = "http://www.tuling123.com/openapi/api?key=".$apiKey."&info=".$keyword."&userid=".userid; if((substr_count($keyword,'天氣')!=0)||$_SESSION["kw"]=="天氣"){ //百度地圖API if($keyword=="天氣"){ $_SESSION["kw"]="天氣"; $content = "請輸入城市".$_SESSION["kw"]; }else{ $geshu = substr_count($keyword,'天氣'); if($geshu==0){ $city = $keyword; }else{ $t = explode("天氣",$keyword); for($i=0;$i<=$geshu;$i++) { if($t[$i]!='') { $city = $t[$i]; break; } } } $mykey ="*********************"; $url = "http://api.map.baidu.com/telematics/v3/weather?location=".$city."&output=json&ak=".$mykey; $output = file_get_contents($url); $contentStr = json_decode($output, true); if($contentStr['status']=='success') { $T[0]['Title']=$contentStr['date']." ".$contentStr['results'][0]['currentCity']."天氣"; $T[0]['PicUrl']="http://zhengwairen-try2.stor.sinaapp.com/xytq.jpg"; $T[0]['Url']="http://zhengwairen-try2.stor.sinaapp.com/xytq.jpg"; if(is_array($contentStr['results'][0]['index'])) { $T[2]['Title']="【pm2.5】".$contentStr['results'][0]['pm25']."\n"."【".$contentStr['results'][0]['index'][0]['title']."】"."(".$contentStr['results'][0]['index'][0]['zs'].") ".$contentStr['results'][0]['index'][0]['des']; //下一行是洗車指數,感覺不對主題還是不要的好。。 //$T[2]['Title']=$T[2]['Title']."\n"."【".$contentStr['results'][0]['index'][1]['title']."】(".$contentStr['results'][0]['index'][1]['zs'].")".$contentStr['results'][0]['index'][1]['des']; $T[2]['Title']=$T[2]['Title']."\n"."【".$contentStr['results'][0]['index'][2]['title']."】(".$contentStr['results'][0]['index'][2]['zs'].")".$contentStr['results'][0]['index'][2]['des']; } else $guowai=1; for($i=1,$aaa=0;$i<=5;$i++) { if($i==2 && $guowai!=1) continue; if($guowai==1 && $i==5) continue; $T[$i]['Title']=$contentStr['results'][0]['weather_data'][$aaa]['date']."".$contentStr['results'][0]['weather_data'][$aaa]['temperature']."".$contentStr['results'][0]['weather_data'][$aaa]['weather']." ".$contentStr['results'][0]['weather_data'][$aaa]['wind']; $T[$i]['PicUrl']=$contentStr['results'][0]['weather_data'][$aaa]['dayPictureUrl']; $T[$i]['Url']=$contentStr['results'][0]['weather_data'][$aaa]['dayPictureUrl']; $aaa++; } $content = $T; } } }else if(substr_count($keyword,'火車')!=0 && $keyword!='火車'){//12306 $geshu = substr_count($keyword,'火車:'); $k = str_replace('火車 ', "", $keyword); $t = explode(" ",$k); $startstaion = $t[0]; $endstation = $t[1]; $date =$t[2]; if($date==null){ $date = date("Y-m-d",time()); } if(substr_count($date,'-')==0){ $date = date("Y-m",time())."-".$date; } $time =$t[3]; if($time==null){ $time = "00:00"; } if(substr_count($time,':')==0){ $time = $time.":00"; } $data = gettrain($startstaion,$endstation,$date,$time); $str=""; $T[0]['Title']=$startstaion."到".$endstation." ".$date." ".$time."以後10列火車信息"; $T[0]['PicUrl']="http://zhengwairen-try2.stor.sinaapp.com/xytq.jpg"; $T[0]['Url']="http://zhengwairen-try2.stor.sinaapp.com/xytq.jpg"; $count = 1; foreach($data as $key =>$value){ $str=$count." "; $str.="火車列次:{$data[$key]['station_train_code']}\n"; $str.="始發站:{$data[$key]['start_station_name']},終點站:{$data[$key]['end_station_name']}\n"; $str.="出發時間:{$data[$key]['start_time']},到站時間:{$data[$key]['arrive_time']},歷時:{$data[$key]['lishi']}\n"; $str.="一等座:{$data[$key]['zy_num']}\n二等座:{$data[$key]['ze_num']}\n硬座:{$data[$key]['yz_num']}\n硬臥:{$data[$key]['yw_num']}\n"; $str.="軟臥:{$data[$key]['rw_num']}\n軟座:{$data[$key]['rz_num']}\n特等座:{$data[$key]['tz_num']}\n無座:{$data[$key]['wz_num']}"; $count = $count+1; $T[$count]['Title'] = $str; // $T[$count]['Url']="http://kyfw.12306.cn/otn/leftTicket/queryTicketPrice?train_no=".$data[$key]["train_no"]."&from_station_no=".$data[$key]["from_station_no"]."&to_station_no=".$data[$key]["to_station_no"]."&seat_types=".$data[$key]["seat_types"]."&train_date=$date"; $T[$count]['Url'] = "https://kyfw.12306.cn/otn/login/init"; if($count==10){ break;} } $content = $T; }else{//圖靈機器人 $file_contents = file_get_contents($apiURL); $file_contents = json_decode($file_contents,true); $code = $file_contents["code"]; if($code==100000){ $content = $file_contents["text"]; }else if($code==200000){ $T[0]['Title']=$file_contents["text"]; //$T[0]['PicUrl']="http://zhengwairen-try2.stor.sinaapp.com/xytq.jpg"; $T[0]['Url']=$file_contents["url"]; $content = $T; }else if($code==302000){ $T[0]['Title']=$file_contents["text"]; $T[0]['PicUrl']="http://zhengwairen-try2.stor.sinaapp.com/xytq.jpg"; $T[0]['Url']="http://zhengwairen-try2.stor.sinaapp.com/xytq.jpg"; $data = $file_contents["list"]; $count = 1; foreach($data as $key =>$value){ $T[$count]['Title']=$data[$key]["article"]; $T[$count]['PicUrl']=$data[$key]["icon"]; $T[$count]['Url']=$data[$key]["detailurl"]; $count++; } $content = $T; }else if($code==305000){ $T[0]['Title']=$file_contents["text"]; $T[0]['PicUrl']="http://zhengwairen-try2.stor.sinaapp.com/xytq.jpg"; $T[0]['Url']="http://zhengwairen-try2.stor.sinaapp.com/xytq.jpg"; $data = $file_contents["list"]; $count = 1; foreach($data as $key =>$value){ $T[$count]['Title']="車次".$data[$key]["trainnum"]."\n起始站:".$data[$key]["start"]."\n到達站:".$data[$key]["terminal"]."\n開車時間:".$data[$key]["starttime"]."\n到達時間:".$data[$key]["endtime"]; $T[$count]['PicUrl']=$data[$key]["icon"]; $T[$count]['Url']=$data[$key]["detailurl"]; $count++; if($count==10){ break; } } $content = $T; }else if($code==306000){ $T[0]['Title']=$file_contents["text"]; $T[0]['PicUrl']="http://zhengwairen-try2.stor.sinaapp.com/xytq.jpg"; $T[0]['Url']="http://zhengwairen-try2.stor.sinaapp.com/xytq.jpg"; $data = $file_contents["list"]; $count = 1; foreach($data as $key =>$value){ $T[$count]['Title']="航班號".$data[$key]["flight"]."航班路線".$data[$key]["route"]."\n起飛時間:".$data[$key]["starttime"]."\n到達時間:".$data[$key]["endtime"]."\n狀態:".$data[$key]["state"]; $T[$count]['PicUrl']=$data[$key]["icon"]; $T[$count]['Url']=$data[$key]["detailurl"]; $count++; } $content = $T; }else if($code==308000){ $T[0]['Title']=$file_contents["text"]; $T[0]['PicUrl']="http://zhengwairen-try2.stor.sinaapp.com/xytq.jpg"; $T[0]['Url']="http://zhengwairen-try2.stor.sinaapp.com/xytq.jpg"; $data = $file_contents["list"]; $count = 1; foreach($data as $key =>$value){ $T[$count]['Title']="名稱".$data[$key]["name"]."詳情".$data[$key]["info"]; $T[$count]['PicUrl']=$data[$key]["icon"]; $T[$count]['Url']=$data[$key]["detailurl"]; $count++; } $content = $T; }else{ $content = $file_contents["text"]; } } if(is_array($content)){ if (isset($content[0]['PicUrl'])){ $result = $this->transmitNews($object, $content); }else if (isset($content['MusicUrl'])){ $result = $this->transmitMusic($object, $content); } }else{ $result = $this->transmitText($object, $content); } }catch(Exception $e){ $content=$e->getMessage(); $result = $this->transmitText($object, $content); } return $result; } //接收圖片消息 private function receiveImage($object) { $content = array("MediaId"=>$object->MediaId); $result = $this->transmitImage($object, $content); return $result; } //接收位置消息 private function receiveLocation($object) { $content = "你發送的是位置,緯度為:".$object->Location_X.";經度為:".$object->Location_Y.";縮放級別為:".$object->Scale.";位置為:".$object->Label; $result = $this->transmitText($object, $content); return $result; } //接收語音消息 private function receiveVoice($object) { if (isset($object->Recognition) && !empty($object->Recognition)){ $content = "你剛才說的是:".$object->Recognition; $result = $this->transmitText($object, $content); }else{ $content = array("MediaId"=>$object->MediaId); $result = $this->transmitVoice($object, $content); } return $result; } //接收視頻消息 private function receiveVideo($object) { $content = array("MediaId"=>$object->MediaId, "ThumbMediaId"=>$object->ThumbMediaId, "Title"=>"", "Description"=>""); $result = $this->transmitVideo($object, $content); return $result; } //接收鏈接消息 private function receiveLink($object) { $content = "你發送的是鏈接,標題為:".$object->Title.";內容為:".$object->Description.";鏈接地址為:".$object->Url; $result = $this->transmitText($object, $content); return $result; } //回復文本消息 private function transmitText($object, $content) { $xmlTpl = "<xml> <ToUserName><![CDATA[%s]]></ToUserName> <FromUserName><![CDATA[%s]]></FromUserName> <CreateTime>%s</CreateTime> <MsgType><![CDATA[text]]></MsgType> <Content><![CDATA[%s]]></Content> </xml>"; $result = sprintf($xmlTpl, $object->FromUserName, $object->ToUserName, time(), $content); return $result; } //回復圖片消息 private function transmitImage($object, $imageArray) { $itemTpl = "<Image> <MediaId><![CDATA[%s]]></MediaId> </Image>"; $item_str = sprintf($itemTpl, $imageArray['MediaId']); $xmlTpl = "<xml> <ToUserName><![CDATA[%s]]></ToUserName> <FromUserName><![CDATA[%s]]></FromUserName> <CreateTime>%s</CreateTime> <MsgType><![CDATA[image]]></MsgType> $item_str </xml>"; $result = sprintf($xmlTpl, $object->FromUserName, $object->ToUserName, time()); return $result; } //回復語音消息 private function transmitVoice($object, $voiceArray) { $itemTpl = "<Voice> <MediaId><![CDATA[%s]]></MediaId> </Voice>"; $item_str = sprintf($itemTpl, $voiceArray['MediaId']); $xmlTpl = "<xml> <ToUserName><![CDATA[%s]]></ToUserName> <FromUserName><![CDATA[%s]]></FromUserName> <CreateTime>%s</CreateTime> <MsgType><![CDATA[voice]]></MsgType> $item_str </xml>"; $result = sprintf($xmlTpl, $object->FromUserName, $object->ToUserName, time()); return $result; } //回復視頻消息 private function transmitVideo($object, $videoArray) { $itemTpl = "<Video> <MediaId><![CDATA[%s]]></MediaId> <ThumbMediaId><![CDATA[%s]]></ThumbMediaId> <Title><![CDATA[%s]]></Title> <Description><![CDATA[%s]]></Description> </Video>"; $item_str = sprintf($itemTpl, $videoArray['MediaId'], $videoArray['ThumbMediaId'], $videoArray['Title'], $videoArray['Description']); $xmlTpl = "<xml> <ToUserName><![CDATA[%s]]></ToUserName> <FromUserName><![CDATA[%s]]></FromUserName> <CreateTime>%s</CreateTime> <MsgType><![CDATA[video]]></MsgType> $item_str </xml>"; $result = sprintf($xmlTpl, $object->FromUserName, $object->ToUserName, time()); return $result; } //回復圖文消息 private function transmitNews($object, $newsArray) { if(!is_array($newsArray)){ return; } $itemTpl = " <item> <Title><![CDATA[%s]]></Title> <Description><![CDATA[%s]]></Description> <PicUrl><![CDATA[%s]]></PicUrl> <Url><![CDATA[%s]]></Url> </item> "; $item_str = ""; foreach ($newsArray as $item){ $item_str .= sprintf($itemTpl, $item['Title'], $item['Description'], $item['PicUrl'], $item['Url']); } $xmlTpl = "<xml> <ToUserName><![CDATA[%s]]></ToUserName> <FromUserName><![CDATA[%s]]></FromUserName> <CreateTime>%s</CreateTime> <MsgType><![CDATA[news]]></MsgType> <ArticleCount>%s</ArticleCount> <Articles> $item_str</Articles> </xml>"; $result = sprintf($xmlTpl, $object->FromUserName, $object->ToUserName, time(), count($newsArray)); return $result; } //回復音樂消息 private function transmitMusic($object, $musicArray) { $itemTpl = "<Music> <Title><![CDATA[%s]]></Title> <Description><![CDATA[%s]]></Description> <MusicUrl><![CDATA[%s]]></MusicUrl> <HQMusicUrl><![CDATA[%s]]></HQMusicUrl> </Music>"; $item_str = sprintf($itemTpl, $musicArray['Title'], $musicArray['Description'], $musicArray['MusicUrl'], $musicArray['HQMusicUrl']); $xmlTpl = "<xml> <ToUserName><![CDATA[%s]]></ToUserName> <FromUserName><![CDATA[%s]]></FromUserName> <CreateTime>%s</CreateTime> <MsgType><![CDATA[music]]></MsgType> $item_str </xml>"; $result = sprintf($xmlTpl, $object->FromUserName, $object->ToUserName, time()); return $result; } //回復多客服消息 private function transmitService($object) { $xmlTpl = "<xml> <ToUserName><![CDATA[%s]]></ToUserName> <FromUserName><![CDATA[%s]]></FromUserName> <CreateTime>%s</CreateTime> <MsgType><![CDATA[transfer_customer_service]]></MsgType> </xml>"; $result = sprintf($xmlTpl, $object->FromUserName, $object->ToUserName, time()); return $result; } //日志記錄 private function logger($log_content) { if(isset($_SERVER['HTTP_APPNAME'])){ //SAE sae_set_display_errors(false); sae_debug($log_content); sae_set_display_errors(true); }else if($_SERVER['REMOTE_ADDR'] != "127.0.0.1"){ //LOCAL $max_size = 10000; $log_filename = "log.xml"; if(file_exists($log_filename) and (abs(filesize($log_filename)) > $max_size)){unlink($log_filename);} file_put_contents($log_filename, date('H:i:s')." ".$log_content."\r\n", FILE_APPEND); } } } ?> View Code <?php return array( "北京北" => "VAP", "北京東" => "BOP", "北京" => "BJP", "北京南" => "VNP", "北京西" => "BXP", "重慶北" => "CUW", "重慶" => "CQW", "重慶南" => "CRW", "長春" => "CCT", "長春南" => "CET", "長春西" => "CRT", "成都東" => "ICW", "成都南" => "CNW", "成都" => "CDW", "長沙" => "CSQ", "長沙南" => "CWQ", "阿爾山" => "ART", "安康" => "AKY", "阿克蘇" => "ASR", "阿裡河" => "AHX", "阿拉山口" => "AKR", "安平" => "APT", "安慶" => "AQH", "安順" => "ASW", "鞍山" => "AST", "安陽" => "AYF", "北安" => "BAB", "蚌埠" => "BBH", "白城" => "BCT", "北海" => "BHZ", "白河" => "BEL", "白澗" => "BAP", "寶雞" => "BJY", "濱江" => "BJB", "博克圖" => "BKX", "百色" => "BIZ", "白山市" => "HJL", "北台" => "BTT", "包頭東" => "BDC", "包頭" => "BTC", "北屯市" => "BXR", "本溪" => "BXT", "白雲鄂博" => "BEC", "白銀西" => "BXJ", "亳州" => "BZH", "赤壁" => "CBN", "常德" => "VGQ", "承德" => "CDP", "長甸" => "CDT", "赤峰" => "CFD", "茶陵" => "CDG", "蒼南" => "CEH", "昌平" => "CPP", "崇仁" => "CRG", "昌圖" => "CTT", "長汀鎮" => "CDB", "崇信" => "CIJ", "曹縣" => "CXK", "楚雄" => "COM", "陳相屯" => "CXT", "長治北" => "CBF", "長征" => "CZJ", "池州" => "IYH", "常州" => "CZH", "郴州" => "CZQ", "長治" => "CZF", "滄州" => "COP", "崇左" => "CZZ", "大安北" => "RNT", "大成" => "DCT", "丹東" => "DUT", "東方紅" => "DFB", "東莞東" => "DMQ", "大虎山" => "DHD", "敦煌" => "DHJ", "敦化" => "DHL", "德惠" => "DHT", "東京城" => "DJB", "大澗" => "DFP", "都江堰" => "DDW", "大連北" => "DFT", "大理" => "DKM", "大連" => "DLT", "定南" => "DNG", "大慶" => "DZX", "東勝" => "DOC", "大石橋" => "DQT", "大同" => "DTV", "東營" => "DPK", "大楊樹" => "DUX", "都勻" => "RYW", "鄧州" => "DOF", "達州" => "RXW", "德州" => "DZP", "額濟納" => "EJC", "二連" => "RLC", "恩施" => "ESN", "昂昂溪" => "AAX", "阿城" => "ACB", "安達" => "ADX", "安定" => "ADP", "安廣" => "AGT", "艾河" => "AHP", "安化" => "PKQ", "艾家村" => "AJJ", "鳌江" => "ARH", "安家" => "AJB", "阿金" => "AJD", "阿克陶" => "AER", "安口窯" => "AYY", "敖力布告" => "ALD", "安龍" => "AUZ", "阿龍山" => "ASX", "安陸" => "ALN", "阿木爾" => "JTX", "阿南莊" => "AZM", "安慶西" => "APH", "鞍山西" => "AXT", "安塘" => "ATV", "安亭北" => "ASH", "阿圖什" => "ATR", "安圖" => "ATL", "安溪" => "AXS", "博鳌" => "BWQ", "白壁關" => "BGV", "蚌埠南" => "BMH", "巴楚" => "BCR", "板城" => "BUP", "北戴河" => "BEP", "保定" => "BDP", "寶坻" => "BPP", "八達嶺" => "ILP", "巴東" => "BNN", "柏果" => "BGM", "布海" => "BUT", "白河東" => "BIY", "贲紅" => "BVC", "寶華山" => "BWH", "白河縣" => "BEY", "白芨溝" => "BJJ", "碧雞關" => "BJM", "北滘" => "IBQ", "碧江" => "BLQ", "白雞坡" => "BBM", "筆架山" => "BSB", "八角台" => "BTD", "保康" => "BKD", "白奎堡" => "BKB", "白狼" => "BAT", "百浪" => "BRZ", "博樂" => "BOR", "寶拉格" => "BQC", "巴林" => "BLX", "寶林" => "BNB", "北流" => "BOZ", "勃利" => "BLB", "布列開" => "BLR", "寶龍山" => "BND", "八面城" => "BMD", "班貓箐" => "BNM", "八面通" => "BMB", "北馬圈子" => "BRP", "北票南" => "RPD", "白旗" => "BQP", "寶泉嶺" => "BQB", "白泉" => "BQL", "白沙" => "BSW", "巴山" => "BAY", "白水江" => "BSY", "白沙坡" => "BPM", "白石山" => "BAL", "白水鎮" => "BUM", "坂田" => "BTQ", "泊頭" => "BZP", "北屯" => "BYP", "本溪湖" => "BHT", "博興" => "BXK", "八仙筒" => "VXD", "白音察干" => "BYC", "背蔭河" => "BYB", "北營" => "BIV", "巴彥高勒" => "BAC", "白音他拉" => "BID", "鲅魚圈" => "BYT", "白銀市" => "BNJ", "白音胡碩" => "BCD", "巴中" => "IEW", "霸州" => "RMP", "北宅" => "BVP", "赤壁北" => "CIN", "查布嘎" => "CBC", "長城" => "CEJ", "長沖" => "CCM", "承德東" => "CCP", "赤峰西" => "CID", "嵯崗" => "CAX", "柴崗" => "CGT", "長葛" => "CEF", "柴溝堡" => "CGV", "城固" => "CGY", "陳官營" => "CAJ", "成高子" => "CZB", "草海" => "WBW", "柴河" => "CHB", "冊亨" => "CHZ", "草河口" => "CKT", "崔黃口" => "CHP", "巢湖" => "CIH", "蔡家溝" => "CJT", "成吉思汗" => "CJX", "岔江" => "CAM", "蔡家坡" => "CJY", "滄口" => "CKK", "昌樂" => "CLK", "超梁溝" => "CYP", "慈利" => "CUQ", "昌黎" => "CLP", "長嶺子" => "CLT", "晨明" => "CMB", "長農" => "CNJ", "昌平北" => "VBP", "長坡嶺" => "CPM", "辰清" => "CQB", "楚山" => "CSB", "長壽" => "EFW", "磁山" => "CSP", "蒼石" => "CST", "草市" => "CSL", "察素齊" => "CSC", "長山屯" => "CVT", "長汀" => "CES", "昌圖西" => "CPT", "春灣" => "CQQ", "磁縣" => "CIP", "岑溪" => "CNZ", "辰溪" => "CXQ", "磁西" => "CRP", "長興南" => "CFH", "磁窯" => "CYK", "朝陽" => "CYD", "春陽" => "CAL", "城陽" => "CEK", "創業村" => "CEX", "朝陽川" => "CYL", "朝陽地" => "CDD", "長垣" => "CYF", "朝陽鎮" => "CZL", "滁州北" => "CUH", "常州北" => "ESH", "滁州" => "CXH", "潮州" => "CKQ", "常莊" => "CVK", "曹子裡" => "CFP", "車轉灣" => "CWM", "郴州西" => "ICQ", "滄州西" => "CBP", "德安" => "DAG", "大安" => "RAT", "東安" => "DAZ", "大壩" => "DBJ", "大板" => "DBC", "大巴" => "DBD", "到保" => "RBT", "定邊" => "DYJ", "東邊井" => "DBB", "德伯斯" => "RDT", "打柴溝" => "DGJ", "德昌" => "DVW", "滴道" => "DDB", "大德" => "DEM", "大磴溝" => "DKJ", "刀爾登" => "DRD", "得耳布爾" => "DRX", "東方" => "UFQ", "丹鳳" => "DGY", "東豐" => "DIL", "都格" => "DMM", "大官屯" => "DTT", "大關" => "RGW", "東光" => "DGP", "東莞" => "DAQ", "東海" => "DHB", "大灰廠" => "DHP", "大紅旗" => "DQD", "東海縣" => "DQH", "德惠西" => "DXT", "達家溝" => "DJT", "東津" => "DKB", "杜家" => "DJL", "大舊莊" => "DJM", "大口屯" => "DKP", "東來" => "RVD", "德令哈" => "DHO", "大陸號" => "DLC", "帶嶺" => "DLB", "大林" => "DLD", "達拉特旗" => "DIC", "獨立屯" => "DTX", "豆羅" => "DLV", "達拉特西" => "DNC", "東明村" => "DMD", "洞廟河" => "DEP", "東明縣" => "DNF", "大擬" => "DNZ", "大平房" => "DPD", "大盤石" => "RPP", "大埔" => "DPI", "大堡" => "DVT", "大其拉哈" => "DQX", "道清" => "DML", "對青山" => "DQB", "德清西" => "MOH", "東升" => "DRQ", "獨山" => "RWW", "砀山" => "DKH", "登沙河" => "DWT", "讀書鋪" => "DPM", "大石頭" => "DSL", "大石寨" => "RZT", "東台" => "DBH", "定陶" => "DQK", "燈塔" => "DGT", "大田邊" => "DBM", "東通化" => "DTL", "丹徒" => "RUH", "大屯" => "DNT", "東灣" => "DRJ", "大武口" => "DFJ", "低窩鋪" => "DWJ", "大王灘" => "DZZ", "大灣子" => "DFM", "大興溝" => "DXL", "大興" => "DXX", "定西" => "DSJ", "甸心" => "DXM", "東鄉" => "DXG", "代縣" => "DKV", "定襄" => "DXV", "東戌" => "RXP", "東辛莊" => "DXD", "丹陽" => "DYH", "大雁" => "DYX", "德陽" => "DYW", "當陽" => "DYN", "丹陽北" => "EXH", "大英東" => "IAW", "東淤地" => "DBV", "大營" => "DYV", "定遠" => "EWH", "岱岳" => "RYV", "大元" => "DYZ", "大營鎮" => "DJP", "大營子" => "DZD", "大戰場" => "DTJ", "德州東" => "DIP", "低莊" => "DVQ", "東鎮" => "DNV", "道州" => "DFZ", "東至" => "DCH", "東莊" => "DZV", "兌鎮" => "DWV", "豆莊" => "ROP", "定州" => "DXP", "大竹園" => "DZY", "大杖子" => "DAP", "豆張莊" => "RZP", "峨邊" => "EBW", "二道溝門" => "RDP", "二道灣" => "RDX", "二龍" => "RLD", "二龍山屯" => "ELA", "峨眉" => "EMW", "二密河" => "RML", "二營" => "RYJ", "鄂州" => "ECN", "安陽東" => "ADF", "保定東" => "BMP", "長陽" => "CYN", "東二道河" => "DRB", "大苴" => "DIM", "大青溝" => "DSD", "定州東" => "DOP", "福州" => "FZS", "福州南" => "FYS", "貴陽" => "GIW", "廣州北" => "GBQ", "廣州東" => "GGQ", "廣州" => "GZQ", "廣州南" => "IZQ", "哈爾濱" => "HBB", "哈爾濱東" => "VBB", "哈爾濱西" => "VAB", "合肥" => "HFH", "合肥西" => "HTH", "呼和浩特東" => "NDC", "呼和浩特" => "HHC", "海口東" => "HMQ", "海口" => "VUQ", "杭州" => "HZH", "杭州南" => "XHH", "濟南" => "JNK", "濟南東" => "JAK", "濟南西" => "JGK", "防城港" => "FEZ", "福鼎" => "FES", "風陵渡" => "FLV", "涪陵" => "FLW", "富拉爾基" => "FRX", "撫順北" => "FET", "佛山" => "FSQ", "阜新" => "FXD", "阜陽" => "FYH", "格爾木" => "GRO", "廣漢" => "GHW", "古交" => "GJV", "桂林北" => "GBZ", "古蓮" => "GRX", "桂林" => "GLZ", "固始" => "GXN", "廣水" => "GSN", "干塘" => "GNJ", "廣元" => "GYW", "贛州" => "GZG", "公主嶺" => "GLT", "公主嶺南" => "GBT", "淮安" => "AUH", "鶴北" => "HMB", "淮北" => "HRH", "淮濱" => "HVN", "河邊" => "HBV", "潢川" => "KCN", "韓城" => "HCY", "邯鄲" => "HDP", "橫道河子" => "HDB", "鶴崗" => "HGB", "皇姑屯" => "HTT", "紅果" => "HEM", "黑河" => "HJB", "懷化" => "HHQ", "漢口" => "HKN", "葫蘆島" => "HLD", "海拉爾" => "HRX", "霍林郭勒" => "HWD", "海倫" => "HLB", "侯馬" => "HMV", "哈密" => "HMR", "淮南" => "HAH", "桦南" => "HNB", "海寧西" => "EUH", "鶴慶" => "HQM", "懷柔北" => "HBP", "懷柔" => "HRP", "黃石東" => "OSN", "華山" => "HSY", "黃石" => "HSN", "黃山" => "HKH", "衡水" => "HSP", "衡陽" => "HYQ", "菏澤" => "HIK", "賀州" => "HXZ", "漢中" => "HOY", "惠州" => "HCQ", "吉安" => "VAG", "集安" => "JAL", "江邊村" => "JBG", "晉城" => "JCF", "金城江" => "JJZ", "景德鎮" => "JCG", "嘉峰" => "JFF", "加格達奇" => "JGX", "井岡山" => "JGG", "蛟河" => "JHL", "金華南" => "RNH", "金華西" => "JBH", "九江" => "JJG", "吉林" => "JLL", "荊門" => "JMN", "佳木斯" => "JMB", "濟寧" => "JIK", "集寧南" => "JAC", "酒泉" => "JQJ", "江山" => "JUH", "吉首" => "JIQ", "九台" => "JTL", "鏡鐵山" => "JVJ", "雞西" => "JXB", "薊縣" => "JKP", "績溪縣" => "JRH", "嘉峪關" => "JGJ", "江油" => "JFW", "錦州" => "JZD", "金州" => "JZT", "福安" => "FAS", "防城" => "FAZ", "豐城" => "FCG", "豐城南" => "FNG", "肥東" => "FIH", "發耳" => "FEM", "富海" => "FHX", "福海" => "FHR", "鳳凰城" => "FHT", "奉化" => "FHH", "富錦" => "FIB", "范家屯" => "FTT", "福利屯" => "FTB", "豐樂鎮" => "FZB", "阜南" => "FNH", "阜寧" => "AKH", "撫寧" => "FNP", "福清" => "FQS", "福泉" => "VMW", "豐水村" => "FSJ", "豐順" => "FUQ", "繁峙" => "FSV", "撫順" => "FST", "福山口" => "FKP", "扶綏" => "FSZ", "馮屯" => "FTX", "浮圖峪" => "FYP", "富縣東" => "FDY", "鳳縣" => "FXY", "富縣" => "FEY", "費縣" => "FXK", "鳳陽" => "FUH", "汾陽" => "FAV", "扶余北" => "FBT", "分宜" => "FYG", "富源" => "FYM", "扶余" => "FYT", "富裕" => "FYX", "撫州北" => "FBG", "鳳州" => "FZY", "豐鎮" => "FZC", "范鎮" => "VZK", "固安" => "GFP", "廣安" => "VJW", "高碑店" => "GBP", "溝幫子" => "GBD", "甘草店" => "GDJ", "谷城" => "GCN", "藁城" => "GEP", "高村" => "GCV", "古城鎮" => "GZB", "廣德" => "GRH", "貴定" => "GTW", "貴定南" => "IDW", "古東" => "GDV", "貴港" => "GGZ", "官高" => "GVP", "葛根廟" => "GGT", "干溝" => "GGL", "甘谷" => "GGJ", "高各莊" => "GGP", "甘河" => "GAX", "根河" => "GEX", "郭家店" => "GDT", "孤家子" => "GKT", "高老" => "GOB", "古浪" => "GLJ", "皋蘭" => "GEJ", "高樓房" => "GFM", "歸流河" => "GHT", "關林" => "GLF", "甘洛" => "VOW", "郭磊莊" => "GLP", "高密" => "GMK", "公廟子" => "GMC", "工農湖" => "GRT", "廣寧寺" => "GNT", "廣南衛" => "GNM", "高平" => "GPF", "甘泉北" => "GEY", "共青城" => "GAG", "甘旗卡" => "GQD", "甘泉" => "GQY", "高橋鎮" => "GZD", "趕水" => "GSW", "灌水" => "GST", "孤山口" => "GSP", "果松" => "GSL", "高山子" => "GSD", "嘎什甸子" => "GXD", "高台" => "GTJ", "高灘" => "GAY", "古田" => "GTS", "官廳" => "GTP", "廣通" => "GOM", "官廳西" => "KEP", "貴溪" => "GXG", "渦陽" => "GYH", "鞏義" => "GXF", "高邑" => "GIP", "鞏義南" => "GYF", "固原" => "GUJ", "菇園" => "GYL", "公營子" => "GYD", "光澤" => "GZS", "古鎮" => "GNQ", "瓜州" => "GZJ", "高州" => "GSQ", "固鎮" => "GEH", "蓋州" => "GXT", "官字井" => "GOT", "革鎮堡" => "GZT", "冠豸山" => "GSS", "蓋州西" => "GAT", "紅安" => "HWN", "淮安南" => "AMH", "紅安西" => "VXN", "海安縣" => "HIH", "黃柏" => "HBL", "海北" => "HEB", "鶴壁" => "HAF", "華城" => "VCQ", "合川" => "WKW", "河唇" => "HCZ", "漢川" => "HCN", "海城" => "HCT", "黑沖灘" => "HCJ", "黃村" => "HCP", "海城西" => "HXT", "化德" => "HGC", "洪洞" => "HDV", "橫峰" => "HFG", "韓府灣" => "HXJ", "漢沽" => "HGP", "黃瓜園" => "HYM", "紅光鎮" => "IGW", "渾河" => "HHT", "紅花溝" => "VHD", "黃花筒" => "HUD", "賀家店" => "HJJ", "和靜" => "HJR", "紅江" => "HFM", "黑井" => "HIM", "獲嘉" => "HJF", "河津" => "HJV", "涵江" => "HJS", "華家" => "HJT", "河間西" => "HXP", "花家莊" => "HJM", "河口南" => "HKJ", "黃口" => "KOH", "湖口" => "HKG", "呼蘭" => "HUB", "葫蘆島北" => "HPD", "浩良河" => "HHB", "哈拉海" => "HIT", "鶴立" => "HOB", "桦林" => "HIB", "黃陵" => "ULY", "海林" => "HRB", "虎林" => "VLB", "寒嶺" => "HAT", "和龍" => "HLL", "海龍" => "HIL", "哈拉蘇" => "HAX", "呼魯斯太" => "VTJ", "火連寨" => "HLT", "黃梅" => "VEH", "蛤蟆塘" => "HMT", "韓麻營" => "HYP", "黃泥河" => "HHL", "海寧" => "HNH", "惠農" => "HMJ", "和平" => "VAQ", "花棚子" => "HZM", "花橋" => "VQH", "宏慶" => "HEY", "懷仁" => "HRV", "華容" => "HRN", "華山北" => "HDY", "黃松甸" => "HDL", "和什托洛蓋" => "VSR", "紅山" => "VSB", "漢壽" => "VSQ", "衡山" => "HSQ", "黑水" => "HOT", "惠山" => "VCH", "虎什哈" => "HHP", "紅寺堡" => "HSJ", "虎石台" => "HUT", "海石灣" => "HSO", "衡山西" => "HEQ", "紅砂岘" => "VSJ", "黑台" => "HQB", "桓台" => "VTK", "和田" => "VTR", "會同" => "VTQ", "海坨子" => "HZT", "黑旺" => "HWK", "海灣" => "RWH", "紅星" => "VXB", "徽縣" => "HYY", "紅興隆" => "VHB", "換新天" => "VTB", "紅岘台" => "HTJ", "紅彥" => "VIX", "合陽" => "HAY", "海陽" => "HYK", "衡陽東" => "HVQ", "華蓥" => "HUW", "漢陰" => "HQY", "黃羊灘" => "HGJ", "漢源" => "WHW", "湟源" => "HNO", "河源" => "VIQ", "花園" => "HUN", "黃羊鎮" => "HYJ", "化州" => "HZZ", "黃州" => "VON", "霍州" => "HZV", "惠州西" => "VXQ", "巨寶" => "JRT", "靖邊" => "JIY", "金寶屯" => "JBD", "晉城北" => "JEF", "金昌" => "JCJ", "鄄城" => "JCK", "交城" => "JNV", "建昌" => "JFD", "峻德" => "JDB", "井店" => "JFP", "雞東" => "JOB", "江都" => "UDH", "雞冠山" => "JST", "金溝屯" => "VGP", "靜海" => "JHP", "金河" => "JHX", "錦河" => "JHB", "錦和" => "JHQ", "精河" => "JHR", "精河南" => "JIR", "江華" => "JHZ", "建湖" => "AJH", "紀家溝" => "VJD", "晉江" => "JJS", "江津" => "JJW", "姜家" => "JJB", "金坑" => "JKT", "芨嶺" => "JLJ", "金馬村" => "JMM", "角美" => "JES", "江門" => "JWQ", "莒南" => "JOK", "井南" => "JNP", "建瓯" => "JVS", "經棚" => "JPC", "江橋" => "JQX", "九三" => "SSX", "金山北" => "EGH", "京山" => "JCN", "建始" => "JRN", "嘉善" => "JSH", "稷山" => "JVV", "吉舒" => "JSL", "建設" => "JET", "甲山" => "JOP", "建三江" => "JIB", "嘉善南" => "EAH", "金山屯" => "JTB", "江所田" => "JOM", "景泰" => "JTJ", "吉文" => "JWX", "進賢" => "JUG", "莒縣" => "JKK", "嘉祥" => "JUK", "介休" => "JXV", "井陉" => "JJP", "嘉興" => "JXH", "嘉興南" => "EPH", "夾心子" => "JXT", "簡陽" => "JYW", "揭陽" => "JRQ", "建陽" => "JYS", "姜堰" => "UEH", "巨野" => "JYK", "江永" => "JYZ", "靖遠" => "JYJ", "缙雲" => "JYH", "江源" => "SZL", "濟源" => "JYF", "靖遠西" => "JXJ", "膠州北" => "JZK", "焦作東" => "WEF", "靖州" => "JEQ", "荊州" => "JBN", "金寨" => "JZH", "晉州" => "JXP", "膠州" => "JXK", "錦州南" => "JOD", "焦作" => "JOF", "舊莊窩" => "JVP", "金杖子" => "JYD", "富川" => "FDZ", "撫遠" => "FYB", "高碑店東" => "GMP", "革居" => "GEM", "光明城" => "IMQ", "高邑西" => "GNP", "鶴壁東" => "HFF", "寒蔥溝" => "HKB", "邯鄲東" => "HPP", "合肥北城" => "COH", "洪河" => "HPB", "虎門" => "IUQ", "哈密南" => "HLR", "淮南東" => "HOH", "建水" => "JSM", "昆明" => "KMM", "昆明西" => "KXM", "拉薩" => "LSO", "蘭州東" => "LVJ", "蘭州" => "LZJ", "蘭州西" => "LAJ", "南昌" => "NCG", "南京" => "NJH", "南京南" => "NKH", "南寧" => "NNZ", "庫爾勒" => "KLR", "開封" => "KFF", "岢岚" => "KLV", "凱裡" => "KLW", "喀什" => "KSR", "昆山南" => "KNH", "奎屯" => "KTR", "開原" => "KYT", "六安" => "UAH", "靈寶" => "LBF", "蘆潮港" => "UCH", "隆昌" => "LCW", "陸川" => "LKZ", "利川" => "LCN", "臨川" => "LCG", "潞城" => "UTP", "鹿道" => "LDL", "婁底" => "LDQ", "臨汾" => "LFV", "良各莊" => "LGP", "臨河" => "LHC", "漯河" => "LON", "綠化" => "LWJ", "隆化" => "UHP", "麗江" => "LHM", "臨江" => "LQL", "龍井" => "LJL", "呂梁" => "LHV", "醴陵" => "LLG", "柳林南" => "LKV", "灤平" => "UPP", "六盤水" => "UMW", "靈丘" => "LVV", "旅順" => "LST", "隴西" => "LXJ", "澧縣" => "LEQ", "蘭溪" => "LWH", "臨西" => "UEP", "耒陽" => "LYQ", "洛陽" => "LYF", "龍巖" => "LYS", "洛陽東" => "LDF", "連雲港東" => "UKH", "臨沂" => "LVK", "洛陽龍門" => "LLF", "柳園" => "DHR", "凌源" => "LYD", "遼源" => "LYL", "立志" => "LZX", "柳州" => "LZZ", "遼中" => "LZD", "麻城" => "MCN", "免渡河" => "MDX", "牡丹江" => "MDB", "莫爾道嘎" => "MRX", "滿歸" => "MHX", "明光" => "MGH", "漠河" => "MVX", "梅江" => "MKQ", "茂名東" => "MDQ", "茂名" => "MMZ", "密山" => "MSB", "馬三家" => "MJT", "麻尾" => "VAW", "綿陽" => "MYW", "梅州" => "MOQ", "滿洲裡" => "MLX", "寧波東" => "NVH", "南岔" => "NCB", "南充" => "NCW", "南丹" => "NDZ", "南大廟" => "NMP", "南芬" => "NFT", "讷河" => "NHX", "嫩江" => "NGX", "內江" => "NJW", "南平" => "NPS", "南通" => "NUH", "南陽" => "NFF", "碾子山" => "NZX", "開安" => "KAT", "庫車" => "KCR", "康城" => "KCP", "庫都爾" => "KDX", "寬甸" => "KDT", "克東" => "KOB", "開江" => "KAW", "康金井" => "KJB", "喀喇其" => "KQX", "開魯" => "KLC", "克拉瑪依" => "KHR", "口前" => "KQL", "奎山" => "KAB", "昆山" => "KSH", "克山" => "KSB", "開通" => "KTT", "康熙嶺" => "KXZ", "克一河" => "KHX", "開原西" => "KXT", "康莊" => "KZP", "來賓" => "UBZ", "老邊" => "LLT", "靈寶西" => "LPF", "龍川" => "LUQ", "樂昌" => "LCQ", "黎城" => "UCP", "聊城" => "UCK", "藍村" => "LCK", "林東" => "LRC", "樂都" => "LDO", "梁底下" => "LDP", "六道河子" => "LVP", "魯番" => "LVM", "廊坊" => "LJP", "落垡" => "LOP", "廊坊北" => "LFP", "祿豐" => "LFM", "老府" => "UFD", "蘭崗" => "LNB", "龍骨甸" => "LGM", "蘆溝" => "LOM", "龍溝" => "LGJ", "拉古" => "LGB", "臨海" => "UFH", "林海" => "LXX", "拉哈" => "LHX", "凌海" => "JID", "柳河" => "LNL", "六合" => "KLH", "龍華" => "LHP", "灤河沿" => "UNP", "六合鎮" => "LEX", "亮甲店" => "LRT", "劉家店" => "UDT", "劉家河" => "LVT", "連江" => "LKS", "李家" => "LJB", "羅江" => "LJW", "廉江" => "LJZ", "廬江" => "UJH", "兩家" => "UJT", "龍江" => "LJX", "龍嘉" => "UJL", "蓮江口" => "LHB", "蔺家樓" => "ULK", "李家坪" => "LIJ", "蘭考" => "LKF", "林口" => "LKB", "路口鋪" => "LKQ", "老萊" => "LAX", "拉林" => "LAB", "陸良" => "LRM", "龍裡" => "LLW", "零陵" => "UWZ", "臨澧" => "LWQ", "蘭稜" => "LLB", "盧龍" => "UAP", "喇嘛甸" => "LMX", "裡木店" => "LMB", "洛門" => "LMJ", "龍南" => "UNG", "梁平" => "UQW", "羅平" => "LPM", "落坡嶺" => "LPP", "六盤山" => "UPJ", "樂平市" => "LPG", "臨清" => "UQK", "龍泉寺" => "UQJ", "樂善村" => "LUM", "冷水江東" => "UDQ", "連山關" => "LGT", "流水溝" => "USP", "陵水" => "LIQ", "樂山" => "UTW", "羅山" => "LRN", "魯山" => "LAF", "麗水" => "USH", "梁山" => "LMK", "靈石" => "LSV", "露水河" => "LUL", "廬山" => "LSG", "林盛堡" => "LBT", "柳樹屯" => "LSD", "梨樹鎮" => "LSB", "龍山鎮" => "LAS", "李石寨" => "LET", "黎塘" => "LTZ", "輪台" => "LAR", "蘆台" => "LTP", "龍塘壩" => "LBM", "濑湍" => "LVZ", "駱駝巷" => "LTJ", "李旺" => "VLJ", "萊蕪東" => "LWK", "狼尾山" => "LRJ", "靈武" => "LNJ", "萊蕪西" => "UXK", "朗鄉" => "LXB", "隴縣" => "LXY", "臨湘" => "LXQ", "萊西" => "LXK", "林西" => "LXC", "灤縣" => "UXP", "略陽" => "LYY", "萊陽" => "LYK", "遼陽" => "LYT", "臨沂北" => "UYK", "凌源東" => "LDD", "連雲港" => "UIH", "老羊壕" => "LYC", "臨颍" => "LNF", "老營" => "LXL", "龍游" => "LMH", "羅源" => "LVS", "林源" => "LYX", "漣源" => "LAQ", "涞源" => "LYP", "耒陽西" => "LPQ", "臨澤" => "LEJ", "龍爪溝" => "LZT", "雷州" => "UAQ", "六枝" => "LIW", "鹿寨" => "LIZ", "來舟" => "LZS", "龍鎮" => "LZA", "拉鲊" => "LEM", "明安" => "MAC", "馬鞍山" => "MAH", "毛壩" => "MBY", "毛壩關" => "MGY", "麻城北" => "MBN", "渑池" => "MCF", "明城" => "MCL", "廟城" => "MAP", "渑池南" => "MNF", "茅草坪" => "KPM", "猛洞河" => "MUQ", "磨刀石" => "MOB", "彌渡" => "MDF", "帽兒山" => "MRB", "明港" => "MGN", "梅河口" => "MHL", "馬皇" => "MHZ", "孟家崗" => "MGB", "美蘭" => "MHQ", "汨羅東" => "MQQ", "馬蓮河" => "MHB", "茅嶺" => "MLZ", "廟嶺" => "MLL", "茂林" => "MLD", "穆稜" => "MLB", "馬林" => "MID", "馬龍" => "MGM", "汨羅" => "MLQ", "木裡圖" => "MUD", "密馬龍" => "MMM", "瑪納斯湖" => "MNR", "冕寧" => "UGW", "沐滂" => "MPQ", "馬橋河" => "MQB", "閩清" => "MQS", "民權" => "MQF", "明水河" => "MUT", "麻山" => "MAB", "眉山" => "MSW", "漫水灣" => "MKW", "茂捨祖" => "MOM", "米沙子" => "MST", "廟台子" => "MZB", "美溪" => "MEB", "勉縣" => "MVY", "麻陽" => "MVQ", "牧羊村" => "MCM", "米易" => "MMW", "麥園" => "MYS", "墨玉" => "MUR", "密雲" => "MUP", "廟莊" => "MZJ", "米脂" => "MEY", "明珠" => "MFQ", "寧安" => "NAB", "農安" => "NAT", "南博山" => "NBK", "南仇" => "NCK", "南城司" => "NSP", "寧村" => "NCZ", "寧德" => "NES", "南觀村" => "NGP", "南宮東" => "NFP", "南關嶺" => "NLT", "寧國" => "NNH", "寧海" => "NHH", "南河川" => "NHJ", "南華" => "NHS", "泥河子" => "NHD", "寧家" => "NVT", "牛家" => "NJB", "南靖" => "NJS", "能家" => "NJD", "南口" => "NKP", "南口前" => "NKT", "南朗" => "NNQ", "乃林" => "NLD", "尼勒克" => "NIR", "那羅" => "ULZ", "寧陵縣" => "NLF", "奈曼" => "NMD", "寧明" => "NMZ", "南木" => "NMX", "南平南" => "NNS", "那鋪" => "NPZ", "南橋" => "NQD", "那曲" => "NQO", "暖泉" => "NQJ", "南台" => "NTT", "南頭" => "NOQ", "寧武" => "NWV", "南灣子" => "NWP", "南翔北" => "NEH", "寧鄉" => "NXQ", "內鄉" => "NXF", "牛心台" => "NXT", "南峪" => "NUP", "娘子關" => "NIP", "南召" => "NAF", "南雜木" => "NZT", "庫倫" => "KLD", "漯河西" => "LBN", "明港東" => "MDN", "蒙自北" => "MBM", "上海" => "SHH", "上海南" => "SNH", "上海虹橋" => "AOH", "上海西" => "SXH", "天津北" => "TBP", "天津" => "TJP", "天津南" => "TIP", "天津西" => "TXP", "石家莊北" => "VVP", "石家莊" => "SJP", "沈陽" => "SYT", "沈陽北" => "SBT", "沈陽東" => "SDT", "太原北" => "TBV", "太原東" => "TDV", "太原" => "TYV", "平頂山" => "PEN", "盤錦" => "PVD", "平涼" => "PIJ", "平涼南" => "POJ", "平泉" => "PQP", "坪石" => "PSQ", "萍鄉" => "PXG", "憑祥" => "PXZ", "郫縣西" => "PCW", "攀枝花" => "PRW", "蕲春" => "QRN", "青城山" => "QSW", "青島" => "QDK", "清河城" => "QYP", "黔江" => "QNW", "曲靖" => "QJM", "前進鎮" => "QEB", "齊齊哈爾" => "QHX", "七台河" => "QTB", "沁縣" => "QVV", "泉州東" => "QRS", "泉州" => "QYS", "衢州" => "QEH", "融安" => "RAZ", "汝箕溝" => "RQJ", "瑞金" => "RJG", "日照" => "RZK", "雙城堡" => "SCB", "綏芬河" => "SFB", "韶關東" => "SGQ", "山海關" => "SHD", "綏化" => "SHB", "三間房" => "SFX", "蘇家屯" => "SXT", "舒蘭" => "SLL", "三明" => "SMS", "神木" => "OMY", "三門峽" => "SMF", "商南" => "ONY", "遂寧" => "NIW", "四平" => "SPT", "商丘" => "SQF", "上饒" => "SRG", "韶山" => "SSQ", "宿松" => "OAH", "汕頭" => "OTQ", "邵武" => "SWS", "涉縣" => "OEP", "三亞" => "SEQ", "邵陽" => "SYQ", "十堰" => "SNN", "雙鴨山" => "SSB", "松原" => "VYT", "深圳" => "SZQ", "蘇州" => "SZH", "隨州" => "SZN", "宿州" => "OXH", "朔州" => "SUV", "深圳西" => "OSQ", "塘豹" => "TBQ", "塔爾氣" => "TVX", "潼關" => "TGY", "塘沽" => "TGP", "塔河" => "TXX", "通化" => "THL", "泰來" => "TLX", "吐魯番" => "TFR", "通遼" => "TLD", "鐵嶺" => "TLT", "陶賴昭" => "TPT", "圖們" => "TML", "銅仁" => "RDQ", "唐山北" => "FUP", "田師府" => "TFT", "泰山" => "TAK", "天水" => "TSJ", "唐山" => "TSP", "通遠堡" => "TYT", "太陽升" => "TQT", "泰州" => "UTH", "桐梓" => "TZW", "通州西" => "TAP", "平安" => "PAL", "蓬安" => "PAW", "平安驿" => "PNO", "磐安鎮" => "PAJ", "平安鎮" => "PZT", "蒲城東" => "PEY", "蒲城" => "PCY", "裴德" => "PDB", "偏店" => "PRP", "平頂山西" => "BFF", "坡底下" => "PXJ", "瓢兒屯" => "PRT", "平房" => "PFB", "平崗" => "PGL", "平關" => "PGM", "盤關" => "PAM", "平果" => "PGZ", "徘徊北" => "PHP", "平河口" => "PHM", "盤錦北" => "PBD", "潘家店" => "PDP", "皮口" => "PKT", "普蘭店" => "PLT", "偏嶺" => "PNT", "平山" => "PSB", "彭山" => "PSW", "皮山" => "PSR", "彭水" => "PHW", "磐石" => "PSL", "平社" => "PSV", "平台" => "PVT", "平田" => "PTM", "莆田" => "PTS", "葡萄菁" => "PTW", "普灣" => "PWT", "平旺" => "PWV", "平型關" => "PGV", "普雄" => "POW", "平洋" => "PYX", "彭陽" => "PYJ", "平遙" => "PYV", "平邑" => "PIK", "平原堡" => "PPJ", "平原" => "PYK", "平峪" => "PYP", "彭澤" => "PZG", "邳州" => "PJH", "平莊" => "PZD", "泡子" => "POD", "平莊南" => "PND", "乾安" => "QOT", "慶安" => "QAB", "遷安" => "QQP", "祁東北" => "QRQ", "七甸" => "QDM", "曲阜東" => "QAK", "慶豐" => "QFT", "奇峰塔" => "QVP", "曲阜" => "QFK", "勤豐營" => "QFM", "瓊海" => "QYQ", "秦皇島" => "QTP", "千河" => "QUY", "清河" => "QIP", "清河門" => "QHD", "清華園" => "QHP", "渠舊" => "QJZ", "綦江" => "QJW", "潛江" => "QJN", "全椒" => "INH", "秦家" => "QJB", "祁家堡" => "QBT", "清澗縣" => "QNY", "秦家莊" => "QZV", "七裡河" => "QLD", "渠黎" => "QLZ", "秦嶺" => "QLY", "青龍山" => "QGH", "青龍寺" => "QSM", "祁門" => "QIH", "前磨頭" => "QMP", "青山" => "QSB", "全勝" => "QVB", "確山" => "QSN", "清水" => "QUJ", "前山" => "QXQ", "戚墅堰" => "QYH", "青田" => "QVH", "橋頭" => "QAT", "青銅峽" => "QTJ", "前衛" => "QWD", "前葦塘" => "QWP", "渠縣" => "QRW", "祁縣" => "QXV", "青縣" => "QXP", "橋西" => "QXJ", "清徐" => "QUV", "旗下營" => "QXC", "千陽" => "QOY", "沁陽" => "QYF", "泉陽" => "QYL", "祁陽北" => "QVQ", "七營" => "QYJ", "慶陽山" => "QSJ", "清遠" => "QBQ", "清原" => "QYT", "欽州東" => "QDZ", "全州" => "QZZ", "欽州" => "QRZ", "青州市" => "QZK", "瑞安" => "RAH", "榮昌" => "RCW", "瑞昌" => "RCG", "如皋" => "RBH", "容桂" => "RUQ", "任丘" => "RQP", "乳山" => "ROK", "融水" => "RSZ", "熱水" => "RSD", "容縣" => "RXZ", "饒陽" => "RVP", "汝陽" => "RYF", "繞陽河" => "RHD", "汝州" => "ROF", "石壩" => "OBJ", "上板城" => "SBP", "施秉" => "AQW", "上板城南" => "OBP", "世博園" => "ZWT", "雙城北" => "SBB", "商城" => "SWN", "莎車" => "SCR", "順昌" => "SCS", "舒城" => "OCH", "神池" => "SMV", "沙城" => "SCP", "石城" => "SCT", "山城鎮" => "SCL", "山丹" => "SDJ", "順德" => "ORQ", "綏德" => "ODY", "邵東" => "SOQ", "水洞" => "SIL", "商都" => "SXC", "十渡" => "SEP", "四道灣" => "OUD", "順德學院" => "OJQ", "紳坊" => "OLH", "雙豐" => "OFB", "四方台" => "STB", "水富" => "OTW", "三關口" => "OKJ", "桑根達來" => "OGC", "韶關" => "SNQ", "上高鎮" => "SVK", "上杭" => "JBS", "沙海" => "SED", "松河" => "SBM", "沙河" => "SHP", "沙河口" => "SKT", "賽汗塔拉" => "SHC", "沙河市" => "VOP", "沙後所" => "SSD", "山河屯" => "SHL", "三河縣" => "OXP", "四合永" => "OHD", "三匯鎮" => "OZW", "雙河鎮" => "SEL", "石河子" => "SZR", "三合莊" => "SVP", "三家店" => "ODP", "水家湖" => "SQH", "沈家河" => "OJJ", "松江河" => "SJL", "尚家" => "SJB", "孫家" => "SUB", "沈家" => "OJB", "松江" => "SAH", "三江口" => "SKD", "司家嶺" => "OLK", "松江南" => "IMH", "石景山南" => "SRP", "邵家堂" => "SJJ", "三江縣" => "SOZ", "三家寨" => "SMM", "十家子" => "SJD", "松江鎮" => "OZL", "施家嘴" => "SHM", "深井子" => "SWT", "什裡店" => "OMP", "疏勒" => "SUR", "疏勒河" => "SHJ", "捨力虎" => "VLD", "石磷" => "SPB", "綏稜" => "SIB", "石嶺" => "SOL", "石林" => "SLM", "石林南" => "LNM", "石龍" => "SLQ", "薩拉齊" => "SLC", "索倫" => "SNT", "商洛" => "OLY", "沙嶺子" => "SLP", "三門峽南" => "SCF", "三門縣" => "OQH", "石門縣" => "OMQ", "三門峽西" => "SXF", "肅寧" => "SYP", "宋" => "SOB", "雙牌" => "SBZ", "四平東" => "PPT", "遂平" => "SON", "沙坡頭" => "SFJ", "商丘南" => "SPF", "水泉" => "SID", "石泉縣" => "SXY", "石橋子" => "SQT", "石人城" => "SRB", "石人" => "SRL", "山市" => "SQB", "神樹" => "SWB", "鄯善" => "SSR", "三水" => "SJQ", "泗水" => "OSK", "石山" => "SAD", "松樹" => "SFT", "首山" => "SAT", "三十家" => "SRD", "三十裡堡" => "SST", "松樹鎮" => "SSL", "松桃" => "MZQ", "索圖罕" => "SHX", "三堂集" => "SDH", "石頭" => "OTB", "神頭" => "SEV", "沙沱" => "SFM", "上萬" => "SWP", "孫吳" => "SKB", "沙灣縣" => "SXR", "遂溪" => "SXZ", "沙縣" => "SAS", "紹興" => "SOH", "歙縣" => "OVH", "石岘" => "SXL", "上西鋪" => "SXM", "石峽子" => "SXJ", "綏陽" => "SYB", "沭陽" => "FMH", "壽陽" => "SYV", "水洋" => "OYP", "三陽川" => "SYJ", "上腰墩" => "SPJ", "三營" => "OEJ", "順義" => "SOP", "三義井" => "OYD", "三源浦" => "SYL", "三原" => "SAY", "上虞" => "BDH", "上園" => "SUD", "水源" => "OYJ", "桑園子" => "SAJ", "綏中北" => "SND", "蘇州北" => "OHH", "宿州東" => "SRH", "深圳東" => "BJQ", "深州" => "OZP", "孫鎮" => "OZY", "綏中" => "SZD", "尚志" => "SZB", "師莊" => "SNM", "松滋" => "SIN", "師宗" => "SEM", "蘇州園區" => "KAH", "蘇州新區" => "ITH", "石嘴山" => "SZJ", "泰安" => "TMK", "台安" => "TID", "通安驿" => "TAJ", "桐柏" => "TBF", "通北" => "TBB", "湯池" => "TCX", "桐城" => "TTH", "郯城" => "TZK", "鐵廠" => "TCL", "桃村" => "TCK", "通道" => "TRQ", "田東" => "TDZ", "天崗" => "TGL", "土貴烏拉" => "TGC", "通溝" => "TOL", "太谷" => "TGV", "塔哈" => "THX", "棠海" => "THM", "唐河" => "THF", "泰和" => "THG", "太湖" => "TKH", "團結" => "TIX", "譚家井" => "TNJ", "陶家屯" => "TOT", "唐家灣" => "PDQ", "統軍莊" => "TZP", "泰康" => "TKX", "吐列毛杜" => "TMD", "圖裡河" => "TEX", "亭亮" => "TIZ", "田林" => "TFZ", "銅陵" => "TJH", "鐵力" => "TLB", "鐵嶺西" => "PXT", "天門" => "TMN", "天門南" => "TNN", "太姥山" => "TLS", "土牧爾台" => "TRC", "土門子" => "TCJ", "潼南" => "TVW", "洮南" => "TVT", "太平川" => "TIT", "太平鎮" => "TEB", "圖強" => "TQX", "台前" => "TTK", "天橋嶺" => "TQL", "土橋子" => "TQJ", "湯山城" => "TCT", "桃山" => "TAB", "塔石嘴" => "TIM", "通途" => "TUT", "湯旺河" => "THB", "同心" => "TXJ", "土溪" => "TSW", "桐鄉" => "TCH", "田陽" => "TRZ", "桃映" => "TKQ", "天義" => "TND", "湯陰" => "TYF", "駝腰嶺" => "TIL", "太陽山" => "TYJ", "湯原" => "TYB", "塔崖驿" => "TYP", "滕州東" => "TEK", "台州" => "TZH", "天祝" => "TZJ", "滕州" => "TXK", "天鎮" => "TZV", "桐子林" => "TEW", "天柱山" => "QWH", "前鋒" => "QFB", "慶盛" => "QSQ", "深圳北" => "IOQ", "通海" => "TAM", "武漢" => "WHN", "王家營西" => "KNM", "烏魯木齊" => "WMR", "西安北" => "EAY", "西安" => "XAY", "西安南" => "CAY", "西寧西" => "XXO", "銀川" => "YIJ", "鄭州" => "ZZF", "五常" => "WCB", "武昌" => "WCN", "瓦房店" => "WDT", "威海" => "WKK", "蕪湖" => "WHH", "烏海西" => "WXC", "吳家屯" => "WJT", "武隆" => "WLW", "烏蘭浩特" => "WWT", "渭南" => "WNY", "威捨" => "WSM", "歪頭山" => "WIT", "武威" => "WUJ", "武威南" => "WWJ", "無錫" => "WXH", "烏西" => "WXR", "烏伊嶺" => "WPB", "武夷山" => "WAS", "萬源" => "WYY", "萬州" => "WYW", "梧州" => "WZZ", "溫州" => "RZH", "溫州南" => "VRH", "西昌" => "ECW", "許昌" => "XCF", "西昌南" => "ENW", "香坊" => "XFB", "軒崗" => "XGV", "興國" => "EUG", "宣漢" => "XHY", "新會" => "EFQ", "新晃" => "XLQ", "錫林浩特" => "XTC", "興隆縣" => "EXP", "廈門北" => "XKS", "廈門" => "XMS", "廈門高崎" => "XBS", "秀山" => "ETW", "小市" => "XST", "向塘" => "XTG", "宣威" => "XWM", "新鄉" => "XXF", "信陽" => "XUN", "鹹陽" => "XYY", "襄陽" => "XFN", "熊岳城" => "XYT", "興義" => "XRZ", "新沂" => "VIH", "新余" => "XUG", "徐州" => "XCH", "延安" => "YWY", "宜賓" => "YBW", "亞布力南" => "YWB", "葉柏壽" => "YBD", "宜昌東" => "HAN", "永川" => "YCW", "宜春" => "YCG", "宜昌" => "YCN", "鹽城" => "AFH", "運城" => "YNV", "伊春" => "YCB", "榆次" => "YCV", "楊村" => "YBP", "伊爾施" => "YET", "燕崗" => "YGW", "永濟" => "YIV", "延吉" => "YJL", "營口" => "YKT", "牙克石" => "YKX", "閻良" => "YNY", "玉林" => "YLZ", "榆林" => "ALY", "一面坡" => "YPB", "伊寧" => "YMR", "陽平關" => "YAY", "玉屏" => "YZW", "原平" => "YPV", "延慶" => "YNP", "陽泉曲" => "YYV", "玉泉" => "YQB", "陽泉" => "AQP", "玉山" => "YNG", "營山" => "NUW", "燕山" => "AOP", "榆樹" => "YRT", "鷹潭" => "YTG", "煙台" => "YAK", "伊圖裡河" => "YEX", "玉田縣" => "ATP", "義烏" => "YWH", "陽新" => "YON", "義縣" => "YXD", "益陽" => "AEQ", "岳陽" => "YYQ", "永州" => "AOQ", "揚州" => "YLH", "淄博" => "ZBK", "鎮城底" => "ZDV", "自貢" => "ZGW", "珠海" => "ZHQ", "珠海北" => "ZIQ", "湛江" => "ZJZ", "鎮江" => "ZJH", "張家界" => "DIQ", "張家口" => "ZKP", "張家口南" => "ZMP", "周口" => "ZKN", "哲裡木" => "ZLC", "扎蘭屯" => "ZTX", "駐馬店" => "ZDN", "肇慶" => "ZVQ", "周水子" => "ZIT", "昭通" => "ZDW", "中衛" => "ZWJ", "資陽" => "ZYW", "遵義" => "ZIW", "棗莊" => "ZEK", "資中" => "ZZW", "株洲" => "ZZQ", "棗莊西" => "ZFK", "文安" => "WBP", "武安" => "WAP", "王安鎮" => "WVP", "旺蒼" => "WEW", "五叉溝" => "WCT", "文昌" => "WEQ", "溫春" => "WDB", "五大連池" => "WRB", "文登" => "WBK", "五道溝" => "WDL", "五道河" => "WHP", "文地" => "WNZ", "衛東" => "WVT", "武當山" => "WRN", "望都" => "WDP", "烏爾旗汗" => "WHX", "濰坊" => "WFK", "萬發屯" => "WFB", "王府" => "WUT", "瓦房店西" => "WXT", "王崗" => "WGB", "武功" => "WGY", "灣溝" => "WGL", "吳官田" => "WGM", "烏海" => "WVC", "葦河" => "WHB", "衛輝" => "WHF", "吳家川" => "WCJ", "五家" => "WUB", "威箐" => "WAM", "午汲" => "WJP", "渭津" => "WJL", "王家灣" => "WJJ", "倭肯" => "WQB", "五棵樹" => "WKT", "五龍背" => "WBT", "烏蘭哈達" => "WLC", "萬樂" => "WEB", "瓦拉干" => "WVX", "溫嶺" => "VHH", "五蓮" => "WLK", "烏拉特前旗" => "WQC", "烏拉山" => "WSC", "臥裡屯" => "WLX", "渭南北" => "WBY", "烏奴耳" => "WRX", "萬寧" => "WNQ", "萬年" => "WWG", "渭南南" => "WVY", "渭南鎮" => "WNJ", "沃皮" => "WPT", "吳堡" => "WUY", "吳橋" => "WUP", "汪清" => "WQL", "武清" => "WWP", "溫泉" => "WQM", "武山" => "WSJ", "文水" => "WEV", "魏善莊" => "WSP", "王瞳" => "WTP", "五台山" => "WSV", "王團莊" => "WZJ", "五五" => "WVR", "無錫東" => "WGH", "衛星" => "WVB", "聞喜" => "WXV", "武鄉" => "WVV", "無錫新區" => "IFH", "武穴" => "WXN", "吳圩" => "WYZ", "王楊" => "WYB", "五營" => "WWB", "武義" => "RYH", "瓦窯田" => "WIM", "五原" => "WYC", "葦子溝" => "WZL", "韋莊" => "WZY", "五寨" => "WZV", "王兆屯" => "WZB", "微子鎮" => "WQP", "魏杖子" => "WKD", "新安" => "EAM", "興安" => "XAZ", "新安縣" => "XAF", "新保安" => "XAP", "下板城" => "EBP", "西八裡" => "XLP", "宣城" => "ECH", "興城" => "XCD", "小村" => "XEM", "新綽源" => "XRX", "下城子" => "XCB", "新城子" => "XCT", "喜德" => "EDW", "小得江" => "EJM", "西大廟" => "XMP", "小董" => "XEZ", "小東" => "XOD", "西斗鋪" => "XPC", "息烽" => "XFW", "信豐" => "EFG", "襄汾" => "XFV", "新干" => "EGG", "孝感" => "XGN", "西固城" => "XUJ", "夏官營" => "XGJ", "西崗子" => "NBB", "襄河" => "XXB", "新和" => "XIR", "宣和" => "XWJ", "斜河澗" => "EEP", "新華屯" => "XAX", "新華" => "XHB", "新化" => "EHQ", "宣化" => "XHP", "興和西" => "XEC", "小河沿" => "XYD", "下花園" => "XYP", "小河鎮" => "EKY", "徐家" => "XJB", "峽江" => "EJG", "新绛" => "XJV", "辛集" => "ENP", "新江" => "XJM", "西街口" => "EKM", "許家屯" => "XJT", "許家台" => "XTJ", "謝家鎮" => "XMT", "興凱" => "EKB", "小榄" => "EAQ", "香蘭" => "XNB", "興隆店" => "XDD", "新樂" => "ELP", "新林" => "XPX", "小嶺" => "XLB", "新李" => "XLJ", "西林" => "XYB", "西柳" => "GCT", "仙林" => "XPH", "新立屯" => "XLD", "小路溪" => "XLM", "興隆鎮" => "XZB", "新立鎮" => "XGT", "新民" => "XMD", "西麻山" => "XMB", "下馬塘" => "XAT", "孝南" => "XNV", "鹹寧北" => "XRN", "興寧" => "ENQ", "鹹寧" => "XNN", "西平" => "XPN", "興平" => "XPY", "新坪田" => "XPM", "霞浦" => "XOS", "溆浦" => "EPQ", "犀浦" => "XIW", "新青" => "XQB", "新邱" => "XQD", "興泉堡" => "XQJ", "仙人橋" => "XRL", "小寺溝" => "ESP", "杏樹" => "XSB", "夏石" => "XIZ", "浠水" => "XZN", "下社" => "XSV", "徐水" => "XSP", "小哨" => "XAM", "新松浦" => "XOB", "杏樹屯" => "XDT", "許三灣" => "XSJ", "湘潭" => "XTQ", "邢台" => "XTP", "仙桃西" => "XAN", "下台子" => "EIP", "徐聞" => "XJQ", "新窩鋪" => "EPD", "修武" => "XWF", "新縣" => "XSN", "息縣" => "ENN", "西鄉" => "XQY", "湘鄉" => "XXQ", "西峽" => "XIF", "孝西" => "XOV", "小新街" => "XXM", "新興縣" => "XGQ", "西小召" => "XZC", "小西莊" => "XXP", "向陽" => "XDB", "旬陽" => "XUY", "旬陽北" => "XBY", "襄陽東" => "XWN", "興業" => "SNZ", "小雨谷" => "XHM", "信宜" => "EEQ", "小月舊" => "XFM", "小揚氣" => "XYX", "祥雲" => "EXM", "襄垣" => "EIF", "夏邑縣" => "EJH", "新友誼" => "EYB", "新陽鎮" => "XZJ", "徐州東" => "UUH", "新帳房" => "XZX", "懸鐘" => "XRP", "新肇" => "XZT", "忻州" => "XXV", "汐子" => "XZD", "西哲裡木" => "XRD", "新杖子" => "ERP", "姚安" => "YAC", "依安" => "YAX", "永安" => "YAS", "永安鄉" => "YNB", "漁壩村" => "YBM", "亞布力" => "YBB", "元寶山" => "YUD", "羊草" => "YAB", "秧草地" => "YKM", "陽澄湖" => "AIH", "迎春" => "YYB", "葉城" => "YER", "鹽池" => "YKJ", "硯川" => "YYY", "陽春" => "YQQ", "宜城" => "YIN", "應城" => "YHN", "禹城" => "YCK", "晏城" => "YEK", "羊場" => "YED", "陽城" => "YNF", "陽岔" => "YAL", "郓城" => "YPK", "雁翅" => "YAP", "雲彩嶺" => "ACP", "虞城縣" => "IXH", "營城子" => "YCT", "永登" => "YDJ", "英德" => "YDQ", "尹地" => "YDM", "永定" => "YGS", "雁蕩山" => "YGH", "於都" => "YDG", "園墩" => "YAJ", "英德西" => "IIQ", "永福" => "YFZ", "永豐營" => "YYM", "楊崗" => "YRB", "陽高" => "YOV", "陽谷" => "YIK", "友好" => "YOB", "余杭" => "EVH", "沿河城" => "YHP", "巖會" => "AEP", "羊臼河" => "YHM", "永嘉" => "URH", "營街" => "YAM", "鹽津" => "AEW", "余江" => "YHG", "葉集" => "YCH", "燕郊" => "AJP", "姚家" => "YAT", "岳家井" => "YGJ", "一間堡" => "YJT", "英吉沙" => "YIR", "雲居寺" => "AFP", "燕家莊" => "AZK", "永康" => "RFH", "營口東" => "YGT", "銀浪" => "YJX", "永郎" => "YLW", "宜良北" => "YSM", "永樂店" => "YDY", "伊拉哈" => "YLX", "伊林" => "YLB", "彝良" => "ALW", "楊林" => "YLM", "余糧堡" => "YLD", "楊柳青" => "YQP", "月亮田" => "YUM", "亞龍灣" => "TWQ", "楊陵鎮" => "YSY", "義馬" => "YMF", "雲夢" => "YMN", "元謀" => "YMM", "陽明堡" => "YVV", "一面山" => "YST", "玉門鎮" => "YXJ", "沂南" => "YNK", "宜耐" => "YVM", "伊寧東" => "YNR", "一平浪" => "YIM", "營盤水" => "YZJ", "羊堡" => "ABM", "營盤灣" => "YPC", "陽泉北" => "YPP", "樂清" => "UPH", "焉耆" => "YSR", "源遷" => "AQK", "姚千戶屯" => "YQT", "陽曲" => "YQV", "榆樹溝" => "YGP", "月山" => "YBF", "玉石" => "YSJ", "偃師" => "YSF", "沂水" => "YUK", "榆社" => "YSV", "窯上" => "ASP", "元氏" => "YSP", "楊樹嶺" => "YAD", "野三坡" => "AIP", "榆樹屯" => "YSX", "榆樹台" => "YUT", "鷹手營子" => "YIP", "源潭" => "YTQ", "牙屯堡" => "YTZ", "煙筒山" => "YSL", "煙筒屯" => "YUX", "羊尾哨" => "YWM", "越西" => "YHW", "攸縣" => "YOG", "玉溪" => "YXM", "永修" => "ACG", "酉陽" => "AFW", "余姚" => "YYH", "弋陽東" => "YIG", "岳陽東" => "YIQ", "陽邑" => "ARP", "鴨園" => "YYL", "鴛鴦鎮" => "YYJ", "燕子砭" => "YZY", "宜州" => "YSZ", "儀征" => "UZH", "兖州" => "YZK", "迤資" => "YQM", "羊者窩" => "AEM", "楊杖子" => "YZD", "鎮安" => "ZEY", "治安" => "ZAD", "招柏" => "ZBP", "張百灣" => "ZUP", "枝城" => "ZCN", "子長" => "ZHY", "諸城" => "ZQK", "鄒城" => "ZIK", "趙城" => "ZCV", "章黨" => "ZHT", "肇東" => "ZDB", "照福鋪" => "ZFM", "章古台" => "ZGD", "趙光" => "ZGB", "中和" => "ZHX", "中華門" => "VNH", "枝江北" => "ZIN", "鐘家村" => "ZJY", "朱家溝" => "ZUB", "紫荊關" => "ZYP", "周家" => "ZOB", "諸暨" => "ZDH", "鎮江南" => "ZEH", "周家屯" => "ZOD", "鄭家屯" => "ZJD", "褚家灣" => "CWJ", "湛江西" => "ZWQ", "朱家窯" => "ZUJ", "曾家坪子" => "ZBW", "張蘭" => "ZLV", "鎮赉" => "ZLT", "棗林" => "ZIV", "扎魯特" => "ZLD", "扎赉諾爾西" => "ZXX", "樟木頭" => "ZOQ", "中牟" => "ZGF", "中寧東" => "ZDJ", "中寧" => "VNJ", "中寧南" => "ZNJ", "鎮平" => "ZPF", "漳平" => "ZPS", "澤普" => "ZPR", "棗強" => "ZVP", "張橋" => "ZQY", "章丘" => "ZTK", "朱日和" => "ZRC", "澤潤裡" => "ZLM", "中山北" => "ZGQ", "樟樹東" => "ZOG", "中山" => "ZSQ", "柞水" => "ZSY", "鐘山" => "ZSZ", "樟樹" => "ZSG", "珠窩" => "ZOP", "張維屯" => "ZWB", "彰武" => "ZWD", "棕溪" => "ZOY", "鐘祥" => "ZTN", "資溪" => "ZXS", "鎮西" => "ZVT", "張辛" => "ZIP", "正鑲白旗" => "ZXC", "紫陽" => "ZVY", "棗陽" => "ZYN", "竹園壩" => "ZAW", "張掖" => "ZYJ", "鎮遠" => "ZUW", "朱楊溪" => "ZXW", "漳州東" => "GOS", "漳州" => "ZUS", "壯志" => "ZUX", "子洲" => "ZZY", "中寨" => "ZZM", "涿州" => "ZXP", "咋子" => "ZAL", "卓資山" => "ZZC", "株洲西" => "ZAQ", "許昌東" => "XVF", "孝感北" => "XJN", "邢台東" => "EDP", "新鄉東" => "EGF", "西陽村" => "XQF", "信陽東" => "OYN", "雨格" => "VTM", "正定機場" => "ZHP", "織金" => "IZW", "駐馬店西" => "ZLN", "涿州東" => "ZAP", "卓資東" => "ZDC", "鄭州東" => "ZAF" ); ?> View Code <?php function gettrain($start,$end,$data,$time){ $station = include('./name.php'); $startstaion = $station[$start]; $endstation = $station[$end]; if(empty($data)){ $date = date("Y-m-d",time()); }else{ $num = explode("-", $data); if(count($num)==2){ $date = date("Y",time())."-".$data; }else if(count($num)==3){ $date = $data; }else{ exit("time error"); } } if(empty($startstaion)||empty($endstation)){ exit("stdin error"); } $url ="http://kyfw.12306.cn/otn/lcxxcx/query?purpose_codes=ADULT&queryDate=".$date."&from_station=".$startstaion."&to_station=".$endstation; $data = doget($url); $rdata; $rdatacount = 0; if(!$data['status']){ exit('check error'); }else{ $data = $data['data']['datas']; foreach ($data as $key => $value) { $start_time = $date." ".$data[$key]["start_time"]; $ttime = $date." ".$time; if(strtotime($start_time)<strtotime($ttime)){ continue; } $tcount = $rdatacount++; if($tcount==10){ break; } $rdata[$tcount]["gr_num"] = $data[$key]["gr_num"]; $rdata[$tcount]["qt_num"] = $data[$key]["qt_num"]; $rdata[$tcount]["rw_num"] = $data[$key]["rw_num"]; $rdata[$tcount]["rz_num"] = $data[$key]["rz_num"]; $rdata[$tcount]["tz_num"] = $data[$key]["tz_num"]; $rdata[$tcount]["wz_num"] = $data[$key]["wz_num"]; $rdata[$tcount]["yw_num"] = $data[$key]["yw_num"]; $rdata[$tcount]["yz_num"] = $data[$key]["yz_num"]; $rdata[$tcount]["ze_num"] = $data[$key]["ze_num"]; $rdata[$tcount]["zy_num"] = $data[$key]["zy_num"]; $rdata[$tcount]["swz_num"]= $data[$key]["swz_num"]; $rdata[$tcount]["train_no"] = $data[$key]["train_no"]; $rdata[$tcount]["from_station_no"] = $data[$key]["from_station_no"]; $rdata[$tcount]["to_station_no"] = $data[$key]["to_station_no"]; $rdata[$tcount]["seat_types"] = $data[$key]["seat_types"]; $rdata[$tcount]["lishi"] = $data[$key]["lishi"]; $rdata[$tcount]["arrive_time"] = $data[$key]["arrive_time"]; $rdata[$tcount]["start_time"] = $data[$key]["start_time"]; $rdata[$tcount]["end_station_name"] = $data[$key]["end_station_name"]; $rdata[$tcount]["start_station_name"] = $data[$key]["start_station_name"]; $rdata[$tcount]["station_train_code"] = $data[$key]["station_train_code"]; $rdata[$tcount]["date"] = $date; } } return $rdata; } function doget($url){ if(function_exists('file_get_contents')) { $optionget = array('http' => array('method' => "GET", 'header' => "User-Agent:Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; SLCC1; .NET CLR 2.0.50727; Media Center PC 5.0; .NET CLR 3.5.21022; .NET CLR 3.0.04506; CIBA)\r\nAccept:*/*\r\nReferer:https://kyfw.12306.cn/otn/lcxxcx/init")); $file_contents = file_get_contents($url, false , stream_context_create($optionget)); } else { $ch = curl_init(); $timeout = 5; $header = array( 'Accept:*/*', 'Accept-Charset:GBK,utf-8;q=0.7,*;q=0.3', 'Accept-Encoding:gzip,deflate,sdch', 'Accept-Language:zh-CN,zh;q=0.8,ja;q=0.6,en;q=0.4', 'Connection:keep-alive', 'Host:kyfw.12306.cn', 'Referer:https://kyfw.12306.cn/otn/lcxxcx/init', ); curl_setopt ($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_HTTPHEADER,$header); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST,1); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout); $file_contents = curl_exec($ch); curl_close($ch); //exit( $file_contents); } $file_contents = json_decode($file_contents,true); return $file_contents; } ?> View Code

6.微信效果

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved