From 540f8c0263eb04537a269f89148bb4a50c57ac13 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=A7=A6=E7=A7=8B=E6=97=AD?= Date: Sun, 18 Jan 2026 20:19:31 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9C=80=E7=BB=88=E7=89=88=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- data.csv => PreSaleLicense/data.csv | 458 +++++++++---------- data.json => PreSaleLicense/data.json | 612 +++++++++---------------- PreSaleLicense/data.xlsx | Bin 0 -> 41666 bytes PreSaleLicense/index.js | 251 +++++++++++ convert-units-to-numbers.js | 24 - data.xlsx | Bin 23822 -> 0 bytes json-to-csv.js | 41 -- json-to-xlsx.js | 64 --- package.json | 3 +- pnpm-lock.yaml | 620 ++++++++++++++++++++++++++ remove-empty-license.js | 26 -- scraper.js | 139 ------ update-serial-numbers.js | 21 - 13 files changed, 1317 insertions(+), 942 deletions(-) rename data.csv => PreSaleLicense/data.csv (67%) rename data.json => PreSaleLicense/data.json (94%) create mode 100644 PreSaleLicense/data.xlsx create mode 100644 PreSaleLicense/index.js delete mode 100644 convert-units-to-numbers.js delete mode 100644 data.xlsx delete mode 100644 json-to-csv.js delete mode 100644 json-to-xlsx.js delete mode 100644 remove-empty-license.js delete mode 100644 scraper.js delete mode 100644 update-serial-numbers.js diff --git a/data.csv b/PreSaleLicense/data.csv similarity index 67% rename from data.csv rename to PreSaleLicense/data.csv index c4b219a..e475cd0 100644 --- a/data.csv +++ b/PreSaleLicense/data.csv @@ -2,239 +2,225 @@ "1","现售第【2026】001号","普宁市英豪投资有限公司","桂硕园","普宁市流沙西街道赤华南路西侧","2026-01-15","普宁市","319","154","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012110" "2","普建售许字〔2025〕第19号","普宁市丽达纺织有限公司","御锦阳光花园","普宁市池尾街道市科技工业园内御锦阳光花园","2025-12-16","普宁市","196","174","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012104" "3","现售第【2025】023号","普宁市华骏投资置业有限公司","华骏雅苑","普宁市流沙北街道南平路西侧","2025-12-12","普宁市","626","475","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012098" -"4","空","普宁市宏鹏房地产开发有限公司","嘉润新园","普宁大道大长陇村灰上片区路段北侧","2025-12-12","普宁市","779","779","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012087" -"5","普建售许字(2025)第18号","广东翔栩房地产开发有限公司","瑞景荟花园","普宁市普宁大道与大南山路交叉口东北侧","2025-12-10","普宁市","252","231","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012099" -"6","普建售许字【2025】第17号","普宁市星宏房地产开发有限公司","星河明珠湾花园(七期)","普宁市普惠高速公路南侧、寒妈水库西北侧","2025-12-05","普宁市","109","90","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012095" -"7","现售第【2025】022号","普宁市鸿发投资有限公司","新华名园","普宁市占陇镇占杨村广汕公路南侧","2025-12-02","普宁市","110","76","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012092" -"8","现售第【2025】021号","普宁市鸿发投资有限公司","新华名园","普宁市占陇镇占杨村广汕公路南侧","2025-12-02","普宁市","126","44","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012091" -"9","现售第【2025】020号","普宁市鸿发投资有限公司","新华名园","普宁市占陇镇占杨村广汕公路南侧","2025-12-02","普宁市","222","49","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012090" -"10","现售第【2025】019号","普宁市鸿发投资有限公司","新华名园","普宁市占陇镇占杨村广汕公路南侧","2025-12-02","普宁市","396","73","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012089" -"11","现售第【2025】018号","普宁市华荣实业投资有限公司","保利和府","普宁市324国道(高明段)东南侧规划寒妈东路北侧保利和府","2025-12-02","普宁市","301","176","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012094" -"12","普建售许字(2025)第16号","广东翔栩房地产开发有限公司","瑞景荟花园","普宁市普宁大道与大南山路交叉口东北侧","2025-11-11","普宁市","84","63","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012088" -"13","普建售许字〔2025〕第15号","普宁市丽达纺织有限公司","御锦阳光花园","普宁市池尾街道市科技工业园内御锦阳光花园","2025-10-29","普宁市","195","121","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012075" -"14","现售第【2025】017号","普宁市吉之旅房地产开发有限公司","吉之里","普宁市福宁路南侧、玉潭路东侧","2025-10-24","普宁市","217","48","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012038" -"15","现售第【2025】016号","普宁市吉之旅房地产开发有限公司","吉之里","普宁市福宁路南侧、玉潭路东侧","2025-10-24","普宁市","234","25","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012059" -"16","现售第【2025】015号","普宁市吉之旅房地产开发有限公司","吉之里","普宁市福宁路南侧、玉潭路东侧","2025-10-24","普宁市","9","9","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012060" -"17","现售第【2025】014号","普宁骏合房地产开发有限公司","中骏·云景府","普宁市北二环大道(流沙东街道斗文村段)南侧","2025-10-24","普宁市","160","102","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012062" -"18","现售第【2025】013号","普宁骏合房地产开发有限公司","中骏·云景府","普宁市北二环大道(流沙东街道斗文村段)南侧","2025-10-23","普宁市","136","18","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012063" -"19","空","揭阳普宁万洋众创城科技有限公司","普宁万洋众创城项目(一期)","揭阳市普宁市英歌山普宁产业转移工业园,坛北路北侧","2025-10-15","普宁市","174","174","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012037" -"20","现售第【2025】012号","揭阳普宁万洋众创城科技有限公司","普宁万洋众创城项目(一期)","揭阳市普宁市英歌山普宁产业转移工业园,坛北路北侧","2025-10-15","普宁市","18","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012032" -"21","现售第【2025】011号","普宁市丽达纺织有限公司","御锦阳光花园","普宁市池尾街道市科技工业园内御锦阳光花园","2025-09-26","普宁市","133","23","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012025" -"22","现售第【2025】010号","普宁市丽达纺织有限公司","御锦阳光花园","普宁市池尾街道市科技工业园内御锦阳光花园","2025-09-26","普宁市","131","14","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012026" -"23","现售第【2025】009号","普宁市丽达纺织有限公司","御锦阳光花园","普宁市池尾街道市科技工业园内御锦阳光花园","2025-09-26","普宁市","224","3","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012027" -"24","现售第【2025】008号","普宁市丽达纺织有限公司","御锦阳光花园","普宁市池尾街道市科技工业园内御锦阳光花园","2025-09-26","普宁市","271","28","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012024" -"25","普建售许字(2025)第14号","普宁市星宏房地产开发有限公司","星河明珠湾花园(七期)","普宁市普惠高速公路南侧、寒妈水库西北侧","2025-09-25","普宁市","89","54","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012030" -"26","现售第【2025】007号","普宁骏合房地产开发有限公司","中骏·云景府","普宁市北二环大道(流沙东街道斗文村段)南侧","2025-09-12","普宁市","545","3","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012001" -"27","现售第【2025】006号","普宁骏合房地产开发有限公司","中骏·云景府","普宁市北二环大道(流沙东街道斗文村段)南侧","2025-09-12","普宁市","132","6","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012002" -"28","现售第【2025】005号","普宁骏合房地产开发有限公司","中骏·云景府","普宁市北二环大道(流沙东街道斗文村段)南侧","2025-09-12","普宁市","136","5","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012003" -"29","现售第【2025】004号","普宁骏合房地产开发有限公司","中骏·云景府","普宁市北二环大道(流沙东街道斗文村段)南侧","2025-09-12","普宁市","9","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012004" -"30","普建售许字(2025)第13号","普宁市方直恒泰房地产开发有限公司","方直普宁悦府","普宁大道(贵政山路段)北侧、大学路东侧","2025-09-11","普宁市","97","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011995" -"31","普建售许字【2025】第12号","揭阳普宁万洋众创城科技有限公司","普宁万洋众创城项目(一期)第三批工程","揭阳市普宁市英歌山普宁产业转移工业园,坛北路北侧","2025-08-28","普宁市","10","2","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012035" -"32","普建售许字〔2025〕第11号","普宁市丽达纺织有限公司","御锦阳光花园","普宁市池尾街道市科技工业园内御锦阳光花园","2025-07-29","普宁市","256","128","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011989" -"33","普建售许字(2025)第09号","普宁市星宏房地产开发有限公司","星河明珠湾花园(七期)","普宁市普惠高速公路南侧、寒妈水库西北侧","2025-07-23","普宁市","12","9","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011979" -"34","普建售许字【2025】第08号","普宁市星宏房地产开发有限公司","星河明珠湾花园(六期)","普宁市普惠高速公路南侧、寒妈水库西北侧","2025-04-24","普宁市","114","56","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011963" -"35","普建售许字【2025】第07号","普宁市星宏房地产开发有限公司","星河明珠湾花园(七期)","普宁市普惠高速公路南侧、寒妈水库西北侧","2025-04-24","普宁市","4","3","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011964" -"36","普建售许字【2025】第06号","普宁市星宏房地产开发有限公司","星河明珠湾花园(七期)","普宁市普惠高速公路南侧、寒妈水库西北侧","2025-04-11","普宁市","10","9","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011953" -"37","普建售许字【2025】第02号","普宁市星宏房地产开发有限公司","星河明珠湾花园(七期)","普宁市普惠高速公路南侧、寒妈水库西北侧","2025-02-18","普宁市","12","3","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011938" -"38","现售第【2025】003号","普宁市方直恒泰房地产开发有限公司","方直普宁悦府","普宁大道(贵政山路段)北侧、大学路东侧","2025-02-17","普宁市","558","19","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011933" -"39","现售第【2025】002号","普宁市方直恒泰房地产开发有限公司","方直普宁悦府","普宁大道(贵政山路段)北侧、大学路东侧","2025-02-17","普宁市","124","1","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011935" -"40","普建售许字【2025】第01号","揭阳普宁万洋众创城科技有限公司","普宁万洋众创城项目(一期)第二批工程","揭阳市普宁市英歌山普宁产业转移工业园,坛北路北侧","2025-01-16","普宁市","28","22","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011981" -"41","现售第【2024】029号","广东超亿美投资有限公司","华美汇悦中心","普宁市区环市北路南侧","2024-12-26","普宁市","1538","1300","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011922" -"42","现售第【2024】028号","广东翔栩房地产开发有限公司","翔栩城市花园(三期)","普宁大道南侧、凤凰山公园北侧","2024-12-11","普宁市","479","89","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011914" -"43","现售第【2024】027号","广东翔栩房地产开发有限公司","翔栩城市花园(三期)","普宁大道南侧、凤凰山公园北侧","2024-12-11","普宁市","260","142","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011916" -"44","现售第【2024】026号","广东翔栩房地产开发有限公司","翔栩城市花园(三期)","普宁大道南侧、凤凰山公园北侧","2024-12-11","普宁市","446","148","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011909" -"45","普建售许字(2024)第12号","广东泰亨源实业有限公司","凯旋花园","普宁市军埠镇莲坛村","2024-12-05","普宁市","302","291","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011958" -"46","普建售许字【2024】第11号","普宁市星宏房地产开发有限公司","星河明珠湾花园(六期)","普宁市普惠高速公路南侧、寒妈水库西北侧","2024-11-27","普宁市","224","129","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011908" -"47","现售第【2024】025号","普宁市浩顺房地产开发有限公司","侨光新园","普宁市第三小东侧、侨北二路北侧","2024-11-14","普宁市","744","227","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011898" -"48","空","普宁市星宏房地产开发有限公司","星河明珠湾花园(五期)","普宁市国道324云落段西北侧、普宁市云落中学东南侧、寒妈水库西南侧,普宁市云落中学东侧、寒妈水库南侧","2024-11-08","普宁市","1648","1564","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011889" -"49","普建售许字(2024)第09号","普宁市丽达纺织有限公司","御锦阳光花园","普宁市池尾街道市科技工业园内御锦阳光花园","2024-10-30","普宁市","343","26","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011903" -"50","普建售许字【2024】第08号","普宁市星宏房地产开发有限公司","星河明珠湾花园(六期)","普宁市普惠高速公路南侧、寒妈水库西北侧","2024-10-25","普宁市","171","85","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011868" -"51","现售第【2024】024号","普宁市南园瑞锦纺织印染有限公司","盛世华府","普宁市北环大道(环市北路)南侧","2024-09-04","普宁市","78","56","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011863" -"52","现售第【2024】023号","普宁市汇泰恒业房地产开发有限公司","馨源轩","普宁市区流沙大道北侧新平路西侧","2024-08-20","普宁市","138","6","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011848" -"53","空","广东翔栩房地产开发有限公司","翔栩城市花园(二期)","普宁大道南侧、凤凰山公园北侧","2024-07-02","普宁市","4","1","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011808" -"54","现售第【2024】022号","普宁市星宏房地产开发有限公司","星河明珠湾花园(五期)","普宁市国道324云落段西北侧、普宁市云落中学东南侧、寒妈水库西南侧,普宁市云落中学东侧、寒妈水库南侧","2024-05-30","普宁市","60","13","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011789" -"55","现售第【2024】021号","普宁市星宏房地产开发有限公司","星河明珠湾花园(五期)","普宁市国道324云落段西北侧、普宁市云落中学东南侧、寒妈水库西南侧,普宁市云落中学东侧、寒妈水库南侧","2024-05-30","普宁市","36","3","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011790" -"56","现售第【2024】020号","普宁市星宏房地产开发有限公司","星河明珠湾花园(五期)","普宁市国道324云落段西北侧、普宁市云落中学东南侧、寒妈水库西南侧,普宁市云落中学东侧、寒妈水库南侧","2024-05-30","普宁市","36","3","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011791" -"57","现售第【2024】019号","普宁市星宏房地产开发有限公司","星河明珠湾花园(五期)","普宁市国道324云落段西北侧、普宁市云落中学东南侧、寒妈水库西南侧,普宁市云落中学东侧、寒妈水库南侧","2024-05-30","普宁市","158","9","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011792" -"58","现售第【2024】018号","普宁市星宏房地产开发有限公司","星河明珠湾花园(五期)","普宁市国道324云落段西北侧、普宁市云落中学东南侧、寒妈水库西南侧,普宁市云落中学东侧、寒妈水库南侧","2024-05-30","普宁市","508","14","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011793" -"59","现售第【2024】017号","普宁市星宏房地产开发有限公司","星河明珠湾花园(五期)","普宁市国道324云落段西北侧、普宁市云落中学东南侧、寒妈水库西南侧,普宁市云落中学东侧、寒妈水库南侧","2024-05-30","普宁市","374","52","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011794" -"60","现售第【2024】016号","普宁市星宏房地产开发有限公司","星河明珠湾花园(五期)","普宁市国道324云落段西北侧、普宁市云落中学东南侧、寒妈水库西南侧,普宁市云落中学东侧、寒妈水库南侧","2024-05-30","普宁市","84","17","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011795" -"61","现售第【2024】015号","普宁市星宏房地产开发有限公司","星河明珠湾花园(五期)","普宁市国道324云落段西北侧、普宁市云落中学东南侧、寒妈水库西南侧,普宁市云落中学东侧、寒妈水库南侧","2024-05-30","普宁市","466","42","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011796" -"62","空","普宁市华荣实业投资有限公司","保利和府","普宁市324国道(高明段)东南侧规划寒妈东路北侧保利和府","2024-05-24","普宁市","911","659","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011783" -"63","现售第【2024】014号","广东泰亨源实业有限公司","凯旋花园","普宁市军埠镇莲坛村","2024-05-21","普宁市","232","37","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011778" -"64","普建售许字(2024)第06号","普宁市丽达纺织有限公司","御锦阳光花园","普宁市池尾街道市科技工业园内御锦阳光花园","2024-05-17","普宁市","191","29","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011805" -"65","现售第【2024】013号","普宁市宏鹏房地产开发有限公司","嘉润新园","普宁大道大长陇村灰上片区路段北侧","2024-04-09","普宁市","645","306","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011769" -"66","现售第【2024】012号","普宁市宏鹏房地产开发有限公司","嘉润新园","普宁大道大长陇村灰上片区路段北侧","2024-04-09","普宁市","571","469","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011768" -"67","现售第【2024】011号","普宁市泓亨实业有限公司","江景园","普宁市赵厝寮路南侧、河滨路东侧","2024-04-02","","345","16","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011765" -"68","普建售许字【2024】第04号","普宁市星宏房地产开发有限公司","星河明珠湾花园(六期)","普宁市普惠高速公路南侧、寒妈水库西北侧","2024-03-22","普宁市","144","21","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011759" -"69","现售第【2024】010号","广东翔栩房地产开发有限公司","翔栩城市花园(一期)","普宁大道南侧、凤凰山公园北侧","2024-03-20","普宁市","502","51","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011746" -"70","现售第【2024】009号","广东翔栩房地产开发有限公司","翔栩城市花园(一期)","普宁大道南侧、凤凰山公园北侧","2024-03-20","普宁市","248","15","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011747" -"71","现售第【2024】008号","广东翔栩房地产开发有限公司","翔栩城市花园(一期)","普宁大道南侧、凤凰山公园北侧","2024-03-20","普宁市","258","18","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011745" -"72","现售第【2024】007号","广东翔栩房地产开发有限公司","翔栩城市花园(一期)","普宁大道南侧、凤凰山公园北侧","2024-03-20","普宁市","341","17","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011748" -"73","现售第【2024】006号","广东翔栩房地产开发有限公司","翔栩城市花园(一期)","普宁大道南侧、凤凰山公园北侧","2024-03-20","普宁市","186","53","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011749" -"74","现售第【2024】005号","广东翔栩房地产开发有限公司","翔栩城市花园(二期)","普宁大道南侧、凤凰山公园北侧","2024-03-20","普宁市","241","34","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011750" -"75","现售第【2024】004号","广东翔栩房地产开发有限公司","翔栩城市花园(二期)","普宁大道南侧、凤凰山公园北侧","2024-03-20","普宁市","372","94","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011751" -"76","现售第【2024】003号","广东翔栩房地产开发有限公司","翔栩城市花园(二期)","普宁大道南侧、凤凰山公园北侧","2024-03-20","普宁市","277","30","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011752" -"77","现售第【2024】002号","广东翔栩房地产开发有限公司","翔栩城市花园(二期)","普宁大道南侧、凤凰山公园北侧","2024-03-20","普宁市","248","27","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011753" -"78","现售第【2024】001号","广东翔栩房地产开发有限公司","翔栩城市花园(二期)","普宁大道南侧、凤凰山公园北侧","2024-03-20","普宁市","186","57","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011754" -"79","空","广东翔栩房地产开发有限公司","翔栩新城中心华府(一期)","普宁市新光南路东侧立新路南侧","2024-03-19","普宁市","494","494","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011744" -"80","空","普宁华创文实业开发有限公司","唐商花园","普宁市北环大道(流沙东街道斗文村段)北侧","2024-03-12","普宁市","1115","1013","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011729" -"81","普建售许字【2024】第02号","普宁市星宏房地产开发有限公司","星河明珠湾花园(六期)","普宁市普惠高速公路南侧、寒妈水库西北侧","2024-01-26","普宁市","163","23","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011713" -"82","空","普宁市星宏房地产开发有限公司","星河明珠湾花园(四期)","普宁市云落中学东南侧、寒妈水库南侧,国道324线云落段西北侧、寒妈水库南侧","2023-12-26","普宁市","1815","1616","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011708" -"83","现售第【2023】048号","普宁市金泰房地产开发有限公司","商住楼(欢乐颂楼)","普宁市普宁大道北侧、赤华南路东侧","2023-12-04","普宁市","261","211","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011699" -"84","现售第【2023】047号","普宁市翔栩房地产开发有限公司","翔栩商业街(商住楼)","普宁市普宁大道南北侧、揭神路东侧","2023-11-28","普宁市","150","107","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011696" -"85","现售第【2023】046号","普宁市华荣实业投资有限公司","保利和府","普宁市324国道(高明段)东南侧规划寒妈东路北侧保利和府","2023-11-09","普宁市","310","33","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011670" -"86","现售第【2023】045号","普宁市华荣实业投资有限公司","保利和府","普宁市324国道(高明段)东南侧规划寒妈东路北侧保利和府","2023-11-09","普宁市","204","30","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011671" -"87","现售第【2023】044号","广东新东海电器有限公司","百美雅苑","普宁市流沙南街道泗竹埔村城南大道西侧","2023-11-08","普宁市","105","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011668" -"88","现售第【2023】043号","广东旭炫地产有限公司","百美花园","普宁市池尾大道(新寮段)东南侧","2023-11-08","普宁市","239","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011836" -"89","现售第【2023】042号","广东翔栩房地产开发有限公司","翔栩新城中心华府(一期)","普宁市新光南路东侧立新路南侧","2023-11-02","普宁市","522","246","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011656" -"90","现售第【2023】041号","广东翔栩房地产开发有限公司","翔栩新城中心华府(一期)","普宁市新光南路东侧立新路南侧","2023-11-02","普宁市","461","103","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011659" -"91","现售第【2023】040号","广东港丽投资有限公司","港泰公寓","普宁市高铁站广场西南侧","2023-10-18","普宁市","939","372","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011649" -"92","现售第【2023】039号","普宁市南园瑞锦纺织印染有限公司","盛世华府","普宁市北环大道(环市北路)南侧","2023-10-07","普宁市","577","9","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011631" -"93","普建售许字【2023】第16号","普宁市星宏房地产开发有限公司","星河明珠湾花园(六期)","普宁市普惠高速公路南侧、寒妈水库西北侧","2023-09-28","普宁市","370","34","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012068" -"94","现售第【2023】038号","普宁市翔应地产有限公司","翔栩嘉应华府","普宁市广达北路西侧金池路北侧","2023-09-26","普宁市","700","5","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011568" -"95","现售第【2023】037号","普宁市华荣实业投资有限公司","保利和府","普宁市324国道(高明段)东南侧规划寒妈东路北侧保利和府","2023-09-21","普宁市","106","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011552" -"96","现售第【2023】036号","普宁市星宏房地产开发有限公司","星河明珠湾花园(四期)","普宁市云落中学东南侧、寒妈水库南侧,国道324线云落段西北侧、寒妈水库南侧","2023-09-20","普宁市","56","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011605" -"97","现售第【2023】035号","普宁市星宏房地产开发有限公司","星河明珠湾花园(四期)","普宁市云落中学东南侧、寒妈水库南侧,国道324线云落段西北侧、寒妈水库南侧","2023-09-20","普宁市","194","2","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011606" -"98","现售第【2023】034号","普宁市星宏房地产开发有限公司","星河明珠湾花园(四期)","普宁市云落中学东南侧、寒妈水库南侧,国道324线云落段西北侧、寒妈水库南侧","2023-09-20","普宁市","666","10","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011607" -"99","现售第【2023】033号","普宁市星宏房地产开发有限公司","星河明珠湾花园(四期)","普宁市云落中学东南侧、寒妈水库南侧,国道324线云落段西北侧、寒妈水库南侧","2023-09-20","普宁市","280","2","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011608" -"100","现售第【2023】032号","普宁市星宏房地产开发有限公司","星河明珠湾花园(四期)","普宁市云落中学东南侧、寒妈水库南侧,国道324线云落段西北侧、寒妈水库南侧","2023-09-20","普宁市","221","1","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011610" -"101","现售第【2023】031号","普宁市星宏房地产开发有限公司","星河明珠湾花园(四期)","普宁市云落中学东南侧、寒妈水库南侧,国道324线云落段西北侧、寒妈水库南侧","2023-09-20","普宁市","268","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011611" -"102","现售第【2023】030号","普宁市星宏房地产开发有限公司","星河明珠湾花园(四期)","普宁市云落中学东南侧、寒妈水库南侧,国道324线云落段西北侧、寒妈水库南侧","2023-09-20","普宁市","163","4","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011612" -"103","现售第【2023】029号","普宁市星宏房地产开发有限公司","星河明珠湾花园(四期)","普宁市云落中学东南侧、寒妈水库南侧,国道324线云落段西北侧、寒妈水库南侧","2023-09-20","普宁市","226","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011613" -"104","现售第【2023】028号","普宁市星宏房地产开发有限公司","星河明珠湾花园(四期)","普宁市云落中学东南侧、寒妈水库南侧,国道324线云落段西北侧、寒妈水库南侧","2023-09-20","普宁市","154","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011614" -"105","现售第【2023】027号","普宁市星宏房地产开发有限公司","星河明珠湾花园(四期)","普宁市云落中学东南侧、寒妈水库南侧,国道324线云落段西北侧、寒妈水库南侧","2023-09-20","普宁市","311","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011615" -"106","现售第【2023】026号","普宁市星宏房地产开发有限公司","星河明珠湾花园(四期)","普宁市云落中学东南侧、寒妈水库南侧,国道324线云落段西北侧、寒妈水库南侧","2023-09-20","普宁市","38","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011616" -"107","现售第【2023】025号","普宁市星宏房地产开发有限公司","星河明珠湾花园(四期)","普宁市云落中学东南侧、寒妈水库南侧,国道324线云落段西北侧、寒妈水库南侧","2023-09-20","普宁市","38","1","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011617" -"108","现售第【2023】024号","普宁市华尔街投资发展有限公司","盛迪嘉光明花园","普宁市南华路北侧","2023-09-20","普宁市","329","16","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011597" -"109","现售第【2023】023号","普宁市华尔街投资发展有限公司","盛迪嘉光明花园","普宁市南华路北侧","2023-09-20","普宁市","280","2","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011598" -"110","现售第【2023】022号","普宁市华尔街投资发展有限公司","盛迪嘉光明花园","普宁市南华路北侧","2023-09-20","普宁市","233","7","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011599" -"111","现售第【2023】021号","普宁市华尔街投资发展有限公司","盛迪嘉光明花园","普宁市南华路北侧","2023-09-20","普宁市","334","25","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011600" -"112","现售第【2023】020号","普宁市华尔街投资发展有限公司","盛迪嘉光明花园","普宁市南华路北侧","2023-09-20","普宁市","536","22","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011601" -"113","普建售许字[2023]第15号","广东泰亨源实业有限公司","凯旋花园","普宁市军埠镇莲坛村","2023-09-20","普宁市","275","239","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012105" -"114","空","广东南方梅园生态村有限公司","南方梅园·山湖雅居","普宁市广汕公路(云落段)西北侧","2023-09-19","普宁市","15","11","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011588" -"115","空","普宁市南园瑞锦纺织印染有限公司","盛世华府","普宁市北环大道(环市北路)南侧","2023-09-19","普宁市","315","296","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011590" -"116","现售第【2023】019号","普宁市星宏房地产开发有限公司","星河明珠湾花园(三期)","普宁市广汕公路(云落段)西北侧","2023-09-18","普宁市","303","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011583" -"117","现售第【2023】018号","普宁市星宏房地产开发有限公司","星河明珠湾花园(三期)","普宁市广汕公路(云落段)西北侧","2023-09-18","普宁市","286","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011584" -"118","现售第【2023】017号","普宁市星宏房地产开发有限公司","星河明珠湾花园(三期)","普宁市广汕公路(云落段)西北侧","2023-09-18","普宁市","521","3","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011585" -"119","现售第【2023】016号","普宁市星宏房地产开发有限公司","星河明珠湾花园(三期)","普宁市广汕公路(云落段)西北侧","2023-09-18","普宁市","647","1","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011586" -"120","现售第【2023】015号","普宁市星宏房地产开发有限公司","星河明珠湾花园(三期)","普宁市广汕公路(云落段)西北侧","2023-09-15","普宁市","218","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011582" -"121","现售第【2023】014号","普宁市星宏房地产开发有限公司","星河明珠湾花园(三期)","普宁市广汕公路(云落段)西北侧","2023-09-15","普宁市","38","1","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011581" -"122","现售第【2023】013号","普宁市翔桦地产有限公司","翔栩水岸花园(二期)","普宁市康美大道西侧","2023-09-13","普宁市","437","50","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011564" -"123","现售第【2023】012号","普宁市翔应地产有限公司","翔栩嘉应华府","普宁市广达北路西侧金池路北侧","2023-09-13","普宁市","348","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011567" -"124","现售第【2023】011号","普宁市翔桦地产有限公司","翔栩水岸花园","普宁市揭神路西侧广东福尔莱制衣有限公司西北侧","2023-09-13","普宁市","1034","35","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011563" -"125","现售第【2023】010号","普宁市华荣实业投资有限公司","保利和府","普宁市324国道(高明段)东南侧规划寒妈东路北侧保利和府","2023-09-12","普宁市","177","12","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011549" -"126","现售第【2023】009号","普宁市华荣实业投资有限公司","保利和府","普宁市324国道(高明段)东南侧规划寒妈东路北侧保利和府","2023-09-12","普宁市","307","7","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011550" -"127","现售第【2023】008号","普宁市华荣实业投资有限公司","保利和府","普宁市324国道(高明段)东南侧规划寒妈东路北侧保利和府","2023-09-12","普宁市","455","3","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011551" -"128","现售第【2023】007号","普宁市华荣实业投资有限公司","保利和府","普宁市324国道(高明段)东南侧规划寒妈东路北侧保利和府","2023-09-12","普宁市","254","36","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011548" -"129","现售第【2023】006号","广东东和实业投资有限公司","盛迪嘉光明印象花园","普宁大道东侧东二环大道(原环市东路)南侧","2023-09-12","普宁市","611","455","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011517" -"130","现售第【2023】005号","广东东和实业投资有限公司","盛迪嘉光明印象花园","普宁大道东侧东二环大道(原环市东路)南侧","2023-09-12","普宁市","416","251","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011516" -"131","现售第【2023】004号","广东东和实业投资有限公司","盛迪嘉光明印象花园","普宁大道东侧东二环大道(原环市东路)南侧","2023-09-12","普宁市","1209","635","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011544" -"132","空","普宁市星宏房地产开发有限公司","星河明珠湾花园(三期)","普宁市广汕公路(云落段)西北侧","2023-09-11","普宁市","2006","1631","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011524" -"133","现售第【2023】003号","广东泰亨源实业有限公司","凯旋花园","普宁市军埠镇莲坛村","2023-09-08","普宁市","397","26","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011492" -"134","现售第【2023】002号","广东泰亨源实业有限公司","凯旋花园","普宁市军埠镇莲坛村","2023-09-08","普宁市","284","112","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011498" -"135","现售第【2023】001号","广东泰亨源实业有限公司","凯旋花园","普宁市军埠镇莲坛村","2023-09-08","普宁市","207","22","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011494" -"136","空","普宁华创文实业开发有限公司","唐商花园","普宁市北环大道(流沙东街道斗文村段)北侧","2023-09-07","普宁市","1628","27","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011463" -"137","空","普宁市华天房地产开发有限公司","华美春天园","普宁市南环大道北侧、大学路东侧","2023-09-07","普宁市","853","154","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011423" -"138","普建售许字(2023)第11号","普宁市方直恒泰房地产开发有限公司","方直普宁悦府","普宁大道(贵政山路段)北侧、大学路东侧","2023-07-07","普宁市","97","63","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012082" -"139","普建售许字[2022]第03号","广东泰亨源实业有限公司","凯旋花园","普宁市军埠镇莲坛村","2022-04-20","普宁市","157","27","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011994" -"140","普建售许字(2021)第22号","普宁市方直恒泰房地产开发有限公司","方直普宁悦府","普宁大道(贵政山路段)北侧、大学路东侧","2021-12-30","普宁市","186","2","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012069" -"141","普建售许字(2021)第16号","普宁市方直恒泰房地产开发有限公司","方直普宁悦府","普宁大道(贵政山路段)北侧、大学路东侧","2021-09-28","普宁市","131","1","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012070" -"142","现售第【2020】054号","普宁市鸿捷胜房地产开发有限公司","新华城","普宁市池尾街道新寮村广达北路西侧","2020-11-10","普宁市","2670","31","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011359" -"143","普房售许字【2020】第06号","普宁市碧桂园置业有限公司","普宁碧桂园","普宁市池尾街道塘塔路北侧","2020-09-29","普宁市","124","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011365" -"144","现售第【2020】053号","康美实业投资控股有限公司","康美·福临门公馆","普宁市流沙西街道城南大道北侧","2020-09-08","普宁市","695","15","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011328" -"145","现售第【2020】052号","普宁市俊嘉房地产开发有限公司","盛世华庭东区","普宁市流沙市区城关东路西侧、赤华北路东侧","2020-09-02","普宁市","159","5","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011312" -"146","空","揭阳市鸿森房地产开发有限公司","维美温泉度假村","揭阳市普侨区南部工业园西区","2020-08-27","普宁市","455","222","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011310" -"147","现售第【2020】051号","普宁市永茂实业投资有限公司","滨湖华府","普宁市池尾街道金池路北侧新春路西侧","2020-08-20","普宁市","246","10","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011296" -"148","现售第【2020】050号","普宁市佳泰实业投资有限公司","春熙园","普宁市流沙北街道白沙陇路南侧","2020-08-20","普宁市","398","-6","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011297" -"149","现售第【2020】049号","广东万泰投资有限公司","万泰金融大厦","普宁市流沙市区普宁广场南侧万泰金融大厦","2020-08-17","普宁市","231","101","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011290" -"150","现售第【2020】048号","普宁市恒森投资有限公司","华美景轩","普宁市南溪镇老方村华美景轩","2020-07-13","普宁市","229","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011266" -"151","现售第【2020】047号","普宁市翔栩纺织有限公司","翔栩·帝景花园","普宁市普宁大道南侧揭神路东侧","2020-06-24","普宁市","14","10","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011236" -"152","现售第【2020】046号","普宁市翔栩纺织有限公司","翔栩·帝景花园","普宁市普宁大道南侧揭神路东侧","2020-06-23","普宁市","1642","78","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011240" -"153","现售第【2020】045号","普宁市赵厝寮投资有限公司","华桂苑","普宁市流沙大道北侧体育路西侧","2020-06-23","普宁市","240","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011222" -"154","现售第【2020】044号","普宁市合兴物流有限公司","普宁商贸广场","普宁市洪阳镇鸣岗村","2020-06-19","普宁市","135","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011224" -"155","现售第【2020】043号","普宁市维美表业有限公司","维美新城","普宁市里湖镇镇区安池公路北侧","2020-06-17","普宁市","671","37","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011214" -"156","现售第【2020】042号","普宁市恒润投资有限公司","御景城三区","普宁市流沙赤华北路与南华路交界处","2020-06-16","普宁市","771","8","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011197" -"157","现售第【2020】041号","普宁市恒润投资有限公司","御景城三区","普宁市流沙赤华北路与南华路交界处","2020-06-16","普宁市","1362","5","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011195" -"158","现售第【2020】040号","普宁市恒润投资有限公司","御景城","普宁市流沙市区广达北路东侧南华路北侧","2020-06-16","普宁市","1093","3","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011152" -"159","现售第【2020】039号","普宁市恒润投资有限公司","御景城二区","普宁市流沙市区环市北路南赤华路西侧","2020-06-16","普宁市","1651","5","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011150" -"160","现售第【2020】038号","普宁市恒润投资有限公司","御景城","普宁市流沙市区广达北路东侧南华路北侧","2020-06-16","普宁市","455","1","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011148" -"161","现售第【2020】037号","普宁市凯特曼投资有限公司","凯逸阳光","普宁市流沙文竹南路东侧","2020-06-16","普宁市","1007","21","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011042" -"162","现售第【2020】036号","普宁市俊嘉房地产开发有限公司","盛世华轩","普宁市流沙市区赤华北路西侧南华路南侧","2020-06-15","普宁市","509","29","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011161" -"163","现售第【2020】035号","普宁市金莎投资有限公司","时代中心","普宁市流沙市区环市北路南侧广达北路东侧","2020-06-15","普宁市","910","52","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011015" -"164","现售第【2020】034号","广东南方梅园生态村有限公司","南方梅园·山湖雅居","普宁市广汕公路(云落段)西北侧","2020-06-12","普宁市","191","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011167" -"165","现售第【2020】033号","广东南方梅园生态村有限公司","南方梅园·山湖雅居","普宁市广汕公路(云落段)西北侧","2020-06-12","普宁市","31","1","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011166" -"166","现售第【2020】032号","普宁市金盘科技有限公司","金桂园","普宁市流沙市区新河西路西侧","2020-06-12","普宁市","422","21","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011158" -"167","现售第【2020】031号","普宁市万泰购物广场有限公司","万泰汇购物中心","普宁市流沙市区普宁广场南侧","2020-06-12","普宁市","199","60","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011159" -"168","现售第【2020】030号","广东南方梅园生态村有限公司","南方梅园·山湖雅居","普宁市广汕公路(云落段)西北侧","2020-06-11","普宁市","19","1","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011132" -"169","现售第【2020】029号","广东南方梅园生态村有限公司","南方梅园·山湖雅居","普宁市广汕公路(云落段)西北侧","2020-06-11","普宁市","48","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011129" -"170","现售第【2020】028号","广东南方梅园生态村有限公司","南方梅园·山湖雅居","普宁市广汕公路(云落段)西北侧","2020-06-11","普宁市","63","4","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011127" -"171","现售第【2020】027号","广东南方梅园生态村有限公司","南方梅园·山湖雅居","普宁市广汕公路(云落段)西北侧","2020-06-11","普宁市","66","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011126" -"172","现售第【2020】026号","广东南方梅园生态村有限公司","南方梅园·山湖雅居","普宁市广汕公路(云落段)西北侧","2020-06-11","普宁市","248","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011160" -"173","现售第【2020】025号","广东南方梅园生态村有限公司","南方梅园·山湖雅居","普宁市广汕公路(云落段)西北侧","2020-06-11","普宁市","224","2","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011128" -"174","现售第【2020】024号","广东南方梅园生态村有限公司","南方梅园·山湖雅居","普宁市广汕公路(云落段)西北侧","2020-06-11","普宁市","95","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011130" -"175","现售第【2020】023号","广东南方梅园生态村有限公司","南方梅园·山湖雅居","普宁市广汕公路(云落段)西北侧","2020-06-11","普宁市","45","2","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011131" -"176","现售第【2020】022号","广东南方梅园生态村有限公司","南方梅园·山湖雅居","普宁市广汕公路(云落段)西北侧","2020-06-11","普宁市","44","2","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011133" -"177","现售第【2020】021号","广东南方梅园生态村有限公司","南方梅园·山湖雅居","普宁市广汕公路(云落段)西北侧","2020-06-11","普宁市","263","5","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011134" -"178","现售第【2020】020号","普宁市盛迪嘉置业投资有限公司","盛迪嘉花园","普宁市池尾街道上寮村广达北路西侧","2020-06-10","普宁市","344","1","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011073" -"179","现售第【2020】019号","普宁市金莎投资有限公司","时代中心","普宁市流沙市区环市北路南侧广达北路东侧","2020-06-10","普宁市","172","172","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011034" -"180","现售第【2020】018号","普宁市金莎投资有限公司","时代中心","普宁市流沙市区环市北路南侧广达北路东侧","2020-06-10","普宁市","640","106","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011014" -"181","现售第【2020】017号","普宁市金莎投资有限公司","时代中心","普宁市流沙市区环市北路南侧广达北路东侧","2020-06-10","普宁市","620","412","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011013" -"182","现售第【2020】016号","普宁市宏御房地产开发有限公司","宏御雅轩","普宁市占陇镇占陈村镇政府东侧","2020-06-10","普宁市","66","8","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011215" -"183","现售第【2020】015号","普宁市盘龙湾温泉度假村有限公司","盘龙湾花园","普宁市云落镇古安村","2020-06-10","普宁市","100","5","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011100" -"184","现售第【2020】014号","康美中药城(普宁)有限公司","普宁中药材专业市场","普宁市揭神路东侧普宁中药材专业市场","2020-06-10","普宁市","418","19","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011099" -"185","现售第【2020】013号","康美中药城(普宁)有限公司","普宁中药材专业市场","普宁市揭神路东侧普宁中药材专业市场","2020-06-10","普宁市","517","27","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011089" -"186","现售第【2020】012号","普宁市合润投资有限公司","南欣邸","普宁市大南山街道流石路东侧","2020-06-10","普宁市","100","13","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011087" -"187","现售第【2020】011号","广东嘉懋投资置业有限公司","尚东一品(南区)","普宁市流沙大道北侧普宁国际商品城","2020-06-10","普宁市","632","85","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011210" -"188","现售第【2020】010号","广东嘉懋投资置业有限公司","尚东一品(北区)","普宁市流沙大道北侧普宁国际商品城","2020-06-10","普宁市","452","55","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011211" -"189","现售第【2020】009号","广东嘉懋投资置业有限公司","尚东一品(北区)","普宁市流沙大道北侧普宁国际商品城","2020-06-10","普宁市","537","53","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011212" -"190","现售第【2020】008号","广东嘉懋投资置业有限公司","尚东步行街","普宁市流沙大道北侧普宁国际商品城","2020-06-10","普宁市","325","263","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011209" -"191","现售第【2020】007号","普宁市汇润地产有限公司","汇润·幸福里","普宁市流沙市区新河西路西侧","2020-06-09","普宁市","416","82","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011110" -"192","现售第【2020】006号","普宁市汇润地产有限公司","汇润·吉祥里","普宁市占陇镇镇区广汕公路南侧","2020-06-09","普宁市","583","51","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011113" -"193","现售第【2020】005号","普宁市汇润地产有限公司","汇润·幸福里","普宁市流沙市区新河西路西侧","2020-06-09","普宁市","8","1","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011118" -"194","现售第【2020】004号","普宁市翔栩房地产开发有限公司","翔栩万泰城","揭神路西侧","2020-06-08","普宁市","730","3","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011088" -"195","现售第【2020】003号","普宁市盈泰投资有限公司","盈泰华府","普宁市普宁大道北侧揭神路西侧","2020-06-08","普宁市","872","211","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011026" -"196","现售第【2020】002号","普宁市骏景房地产开发有限公司","丽江骏景花园","普宁市流沙新河东路东侧","2020-06-04","普宁市","703","2","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011037" -"197","现售第【2020】001号","广东南方梅园生态村有限公司","山湖名庭","普宁市广汕公路(云落段)西北侧","2020-06-02","普宁市","872","18","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011023" -"198","普房售许字【2019】第16号","普宁市碧桂园置业有限公司","普宁碧桂园","普宁市池尾街道塘塔路北侧","2020-03-17","普宁市","94","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011045" -"199","普房售许字【2019】第17号","普宁市盘龙湾温泉度假村有限公司","盘龙湾花园","普宁市云落镇古安村","2019-11-20","普宁市","48","34","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011377" -"200","普房售许字【2019】第15号","普宁市碧桂园置业有限公司","普宁碧桂园","普宁市池尾街道塘塔路北侧","2019-10-30","普宁市","60","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011124" -"201","普房售许字【2019】第14号","普宁市碧桂园置业有限公司","普宁碧桂园","普宁市池尾街道塘塔路北侧","2019-10-08","普宁市","189","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011061" -"202","普房售许字【2019】第06号","普宁市碧桂园置业有限公司","普宁碧桂园","普宁市池尾街道塘塔路北侧","2019-04-30","普宁市","97","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011062" -"203","2019005","康美中药城(普宁)有限公司","普宁中药材专业市场","普宁市揭神路东侧普宁中药材专业市场","2019-03-19","普宁市","1","1","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=329" -"204","普2019-01,02","普宁市碧桂园置业有限公司","普宁碧桂园","普宁市池尾街道塘塔路北侧","2019-02-15","普宁市","318","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=-317" -"205","普建售许(2019)第03","广东超亿美投资有限公司","华美创意园","普宁市区环市北路南侧","2019-01-28","普宁市","311","289","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011121" -"206","普建售许字【2018】第014号","普宁市翔栩房地产开发有限公司","翔栩*商业街(商铺)","普宁大道南北侧揭神路东侧","2018-12-05","普宁市","14","12","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011871" -"207","普建售许字[2018]第10号","广东泰亨源实业有限公司","凯旋花园","普宁市军埠镇莲坛村","2018-10-22","普宁市","104","9","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011620" -"208","普建售许字(2018)第003号","普宁市华隆兴房地产开发有限公司","桂荣名轩","普宁市池尾街道华市村南华路南侧桂荣名轩","2018-06-01","普宁市","702","-2","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011226" -"209","编号(2015)字第006","普宁市金莎投资有限公司","时代中心","普宁市流沙市区环市北路南侧广达北路东侧","2018-02-04","普宁市","715","554","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011033" -"210","普2015年-010","广东嘉懋投资置业有限公司","尚东明珠","普宁市流沙大道北侧普宁国际商品城","2017-06-22","普宁市","485","277","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011213" -"211","2016-007","普宁市盘龙湾温泉度假村有限公司","盘龙湾花园","普宁市云落镇古安村","2016-09-18","普宁市","76","1","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=-184" -"212","普2015-014","广东天豪投资有限公司","翠轩花园","普宁市流沙市区玉华南路西侧","2016-01-05","普宁市","448","196","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=-162" -"213","普2015--005","康美中药城(普宁)有限公司","平安里花园","普宁流沙市区文竹北路东环市北路南平安里花园","2015-11-25","普宁市","116","20","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=-159" -"214","普现房2015-004","普宁市万泰购物广场有限公司","万泰汇购物中心","普宁市流沙市区普宁广场南侧","2015-11-08","普宁市","170","120","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011163" -"215","普2015-005","康美中药城(普宁)有限公司","平安里花园","普宁流沙市区文竹北路东环市北路南平安里花园","2015-10-08","普宁市","614","4","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=-146" -"216","普2015-011","普宁市维美表业有限公司","维美新城","普宁市里湖镇镇区安池公路北侧","2015-09-02","普宁市","73","73","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=186" -"217","【2015】009","普宁市友兴实业有限公司","万泰汇大厦","普宁市流沙市区普宁广场南侧","2015-08-07","普宁市","565","379","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011181" -"218","普2014--007","普宁市创展电脑科技有限公司","创展华府","普宁市流沙中河工业区引榕东路北侧","2014-10-31","普宁市","235","36","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=-129" -"219","普2014-003","广东天豪投资有限公司","紫晖花园","广东省普宁市广达东路","2014-03-20","普宁市","266","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=-101" -"220","普现房2013-002","普宁市万泰购物广场有限公司","万泰汇购物中心","普宁市流沙市区普宁广场南侧","2013-12-12","普宁市","81","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011164" -"221","普现房2013-001","普宁市万泰购物广场有限公司","万泰汇购物中心","普宁市流沙市区普宁广场南侧","2013-12-03","普宁市","257","31","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011165" -"222","普2013--001之二","普宁市翔栩房地产开发有限公司","翔栩万泰城","揭神路西侧","2013-05-14","普宁市","349","4","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=-106" -"223","普2013--001之一","普宁市翔栩房地产开发有限公司","翔栩万泰城","揭神路西侧","2013-01-07","普宁市","911","20","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=-97" -"224","普2012--007","普宁市松桂房地产开发有限公司","松竹园","普宁市流沙市区新光北路西侧","2012-09-28","普宁市","36","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=-98" -"225","普2012--004","普宁市桂荣碧水湾房地产开发有限公司","桂荣碧水湾","普宁市里湖镇河头村河头小学东侧","2012-08-13","普宁市","120","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=-31" -"226","普2012-002","普宁市松桂房地产开发有限公司","松竹园","普宁市流沙市区新光北路西侧","2012-04-10","普宁市","72","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=-30" -"227","普2012-001","普宁市捷佳房地产开发有限公司","吉华园","普宁市建设路西侧","2012-04-01","普宁市","128","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=-27" -"228","普2011-006","广东好盈投资有限公司","万盛花园","普宁市流沙南街道光草洋村城南大道南侧文竹西侧","2011-11-29","普宁市","224","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=-25" -"229","普2011-004","普宁市华隆兴房地产开发有限公司","桂荣·君林天下","普宁市池尾华市金池路南侧","2011-08-26","普宁市","34","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=-19" -"230","普2011-003","普宁市桂荣碧水湾房地产开发有限公司","桂荣碧水湾","普宁市里湖镇河头村河头小学东侧","2011-07-27","普宁市","120","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=-15" -"231","普府国用(2003)第特000765号","普宁市创宇房地产开发有限公司","玉湖雅苑","普宁市环城南路","2011-03-31","普宁市","84","84","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=-14" -"232","普2011-001","普宁市汇润地产有限公司","汇润·雅苑","普宁市流沙西街道赵厝寮村广达东","2011-03-08","普宁市","109","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=-12" -"233","2010-003","普宁市流沙广厦房地产开发有限公司南园经营部","盛世华庭西区","普宁市流沙市区赤华北路东侧","2010-12-28","普宁市","247","10","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=-5" -"234","2010-002","普宁市华隆兴房地产开发有限公司","桂荣·君林天下","普宁市池尾华市金池路南侧","2010-07-15","普宁市","79","2","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=4" -"235","2010-001","普宁市中信房地产开发有限公司","中信华府","普宁市流沙新河东侧","2010-05-14","普宁市","256","256","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=7" -"236","2009字第003之二号","普宁市中信房地产开发有限公司","中信华府","普宁市流沙新河东侧","2009-11-03","普宁市","532","532","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=9" -"237","2009字第003之一号","普宁市中信房地产开发有限公司","中信华府","普宁市流沙新河东侧","2009-07-15","普宁市","434","434","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=8" -"238","2009-001","普宁市桂荣碧水湾房地产开发有限公司","桂荣碧水湾","普宁市里湖镇河头村河头小学东侧","2009-02-26","普宁市","104","6","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=3" -"239","2008-002","普宁市福盛房地产开发有限公司","福盛花园","普宁市广达东路东侧","2008-12-15","普宁市","13","13","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=6" \ No newline at end of file +"4","普建售许字(2025)第18号","广东翔栩房地产开发有限公司","瑞景荟花园","普宁市普宁大道与大南山路交叉口东北侧","2025-12-10","普宁市","252","231","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012099" +"5","普建售许字【2025】第17号","普宁市星宏房地产开发有限公司","星河明珠湾花园(七期)","普宁市普惠高速公路南侧、寒妈水库西北侧","2025-12-05","普宁市","109","90","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012095" +"6","现售第【2025】022号","普宁市鸿发投资有限公司","新华名园","普宁市占陇镇占杨村广汕公路南侧","2025-12-02","普宁市","110","76","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012092" +"7","现售第【2025】021号","普宁市鸿发投资有限公司","新华名园","普宁市占陇镇占杨村广汕公路南侧","2025-12-02","普宁市","126","44","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012091" +"8","现售第【2025】020号","普宁市鸿发投资有限公司","新华名园","普宁市占陇镇占杨村广汕公路南侧","2025-12-02","普宁市","222","49","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012090" +"9","现售第【2025】019号","普宁市鸿发投资有限公司","新华名园","普宁市占陇镇占杨村广汕公路南侧","2025-12-02","普宁市","396","73","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012089" +"10","现售第【2025】018号","普宁市华荣实业投资有限公司","保利和府","普宁市324国道(高明段)东南侧规划寒妈东路北侧保利和府","2025-12-02","普宁市","301","176","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012094" +"11","普建售许字(2025)第16号","广东翔栩房地产开发有限公司","瑞景荟花园","普宁市普宁大道与大南山路交叉口东北侧","2025-11-11","普宁市","84","63","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012088" +"12","普建售许字〔2025〕第15号","普宁市丽达纺织有限公司","御锦阳光花园","普宁市池尾街道市科技工业园内御锦阳光花园","2025-10-29","普宁市","195","121","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012075" +"13","现售第【2025】017号","普宁市吉之旅房地产开发有限公司","吉之里","普宁市福宁路南侧、玉潭路东侧","2025-10-24","普宁市","217","48","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012038" +"14","现售第【2025】016号","普宁市吉之旅房地产开发有限公司","吉之里","普宁市福宁路南侧、玉潭路东侧","2025-10-24","普宁市","234","25","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012059" +"15","现售第【2025】015号","普宁市吉之旅房地产开发有限公司","吉之里","普宁市福宁路南侧、玉潭路东侧","2025-10-24","普宁市","9","9","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012060" +"16","现售第【2025】014号","普宁骏合房地产开发有限公司","中骏·云景府","普宁市北二环大道(流沙东街道斗文村段)南侧","2025-10-24","普宁市","160","102","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012062" +"17","现售第【2025】013号","普宁骏合房地产开发有限公司","中骏·云景府","普宁市北二环大道(流沙东街道斗文村段)南侧","2025-10-23","普宁市","136","18","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012063" +"18","现售第【2025】012号","揭阳普宁万洋众创城科技有限公司","普宁万洋众创城项目(一期)","揭阳市普宁市英歌山普宁产业转移工业园,坛北路北侧","2025-10-15","普宁市","18","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012032" +"19","现售第【2025】011号","普宁市丽达纺织有限公司","御锦阳光花园","普宁市池尾街道市科技工业园内御锦阳光花园","2025-09-26","普宁市","133","23","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012025" +"20","现售第【2025】010号","普宁市丽达纺织有限公司","御锦阳光花园","普宁市池尾街道市科技工业园内御锦阳光花园","2025-09-26","普宁市","131","14","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012026" +"21","现售第【2025】009号","普宁市丽达纺织有限公司","御锦阳光花园","普宁市池尾街道市科技工业园内御锦阳光花园","2025-09-26","普宁市","224","3","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012027" +"22","现售第【2025】008号","普宁市丽达纺织有限公司","御锦阳光花园","普宁市池尾街道市科技工业园内御锦阳光花园","2025-09-26","普宁市","271","28","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012024" +"23","普建售许字(2025)第14号","普宁市星宏房地产开发有限公司","星河明珠湾花园(七期)","普宁市普惠高速公路南侧、寒妈水库西北侧","2025-09-25","普宁市","89","54","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012030" +"24","现售第【2025】007号","普宁骏合房地产开发有限公司","中骏·云景府","普宁市北二环大道(流沙东街道斗文村段)南侧","2025-09-12","普宁市","545","3","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012001" +"25","现售第【2025】006号","普宁骏合房地产开发有限公司","中骏·云景府","普宁市北二环大道(流沙东街道斗文村段)南侧","2025-09-12","普宁市","132","6","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012002" +"26","现售第【2025】005号","普宁骏合房地产开发有限公司","中骏·云景府","普宁市北二环大道(流沙东街道斗文村段)南侧","2025-09-12","普宁市","136","5","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012003" +"27","现售第【2025】004号","普宁骏合房地产开发有限公司","中骏·云景府","普宁市北二环大道(流沙东街道斗文村段)南侧","2025-09-12","普宁市","9","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012004" +"28","普建售许字(2025)第13号","普宁市方直恒泰房地产开发有限公司","方直普宁悦府","普宁大道(贵政山路段)北侧、大学路东侧","2025-09-11","普宁市","97","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011995" +"29","普建售许字【2025】第12号","揭阳普宁万洋众创城科技有限公司","普宁万洋众创城项目(一期)第三批工程","揭阳市普宁市英歌山普宁产业转移工业园,坛北路北侧","2025-08-28","普宁市","10","2","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012035" +"30","普建售许字〔2025〕第11号","普宁市丽达纺织有限公司","御锦阳光花园","普宁市池尾街道市科技工业园内御锦阳光花园","2025-07-29","普宁市","256","128","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011989" +"31","普建售许字(2025)第09号","普宁市星宏房地产开发有限公司","星河明珠湾花园(七期)","普宁市普惠高速公路南侧、寒妈水库西北侧","2025-07-23","普宁市","12","9","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011979" +"32","普建售许字【2025】第08号","普宁市星宏房地产开发有限公司","星河明珠湾花园(六期)","普宁市普惠高速公路南侧、寒妈水库西北侧","2025-04-24","普宁市","114","56","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011963" +"33","普建售许字【2025】第07号","普宁市星宏房地产开发有限公司","星河明珠湾花园(七期)","普宁市普惠高速公路南侧、寒妈水库西北侧","2025-04-24","普宁市","4","3","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011964" +"34","普建售许字【2025】第06号","普宁市星宏房地产开发有限公司","星河明珠湾花园(七期)","普宁市普惠高速公路南侧、寒妈水库西北侧","2025-04-11","普宁市","10","9","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011953" +"35","普建售许字【2025】第02号","普宁市星宏房地产开发有限公司","星河明珠湾花园(七期)","普宁市普惠高速公路南侧、寒妈水库西北侧","2025-02-18","普宁市","12","3","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011938" +"36","现售第【2025】003号","普宁市方直恒泰房地产开发有限公司","方直普宁悦府","普宁大道(贵政山路段)北侧、大学路东侧","2025-02-17","普宁市","558","19","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011933" +"37","现售第【2025】002号","普宁市方直恒泰房地产开发有限公司","方直普宁悦府","普宁大道(贵政山路段)北侧、大学路东侧","2025-02-17","普宁市","124","1","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011935" +"38","普建售许字【2025】第01号","揭阳普宁万洋众创城科技有限公司","普宁万洋众创城项目(一期)第二批工程","揭阳市普宁市英歌山普宁产业转移工业园,坛北路北侧","2025-01-16","普宁市","28","22","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011981" +"39","现售第【2024】029号","广东超亿美投资有限公司","华美汇悦中心","普宁市区环市北路南侧","2024-12-26","普宁市","1538","1300","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011922" +"40","现售第【2024】028号","广东翔栩房地产开发有限公司","翔栩城市花园(三期)","普宁大道南侧、凤凰山公园北侧","2024-12-11","普宁市","479","89","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011914" +"41","现售第【2024】027号","广东翔栩房地产开发有限公司","翔栩城市花园(三期)","普宁大道南侧、凤凰山公园北侧","2024-12-11","普宁市","260","142","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011916" +"42","现售第【2024】026号","广东翔栩房地产开发有限公司","翔栩城市花园(三期)","普宁大道南侧、凤凰山公园北侧","2024-12-11","普宁市","446","148","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011909" +"43","普建售许字(2024)第12号","广东泰亨源实业有限公司","凯旋花园","普宁市军埠镇莲坛村","2024-12-05","普宁市","302","291","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011958" +"44","普建售许字【2024】第11号","普宁市星宏房地产开发有限公司","星河明珠湾花园(六期)","普宁市普惠高速公路南侧、寒妈水库西北侧","2024-11-27","普宁市","224","129","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011908" +"45","现售第【2024】025号","普宁市浩顺房地产开发有限公司","侨光新园","普宁市第三小东侧、侨北二路北侧","2024-11-14","普宁市","744","227","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011898" +"46","普建售许字(2024)第09号","普宁市丽达纺织有限公司","御锦阳光花园","普宁市池尾街道市科技工业园内御锦阳光花园","2024-10-30","普宁市","343","26","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011903" +"47","普建售许字【2024】第08号","普宁市星宏房地产开发有限公司","星河明珠湾花园(六期)","普宁市普惠高速公路南侧、寒妈水库西北侧","2024-10-25","普宁市","171","85","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011868" +"48","现售第【2024】024号","普宁市南园瑞锦纺织印染有限公司","盛世华府","普宁市北环大道(环市北路)南侧","2024-09-04","普宁市","78","56","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011863" +"49","现售第【2024】023号","普宁市汇泰恒业房地产开发有限公司","馨源轩","普宁市区流沙大道北侧新平路西侧","2024-08-20","普宁市","138","6","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011848" +"50","现售第【2024】022号","普宁市星宏房地产开发有限公司","星河明珠湾花园(五期)","普宁市国道324云落段西北侧、普宁市云落中学东南侧、寒妈水库西南侧,普宁市云落中学东侧、寒妈水库南侧","2024-05-30","普宁市","60","13","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011789" +"51","现售第【2024】021号","普宁市星宏房地产开发有限公司","星河明珠湾花园(五期)","普宁市国道324云落段西北侧、普宁市云落中学东南侧、寒妈水库西南侧,普宁市云落中学东侧、寒妈水库南侧","2024-05-30","普宁市","36","3","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011790" +"52","现售第【2024】020号","普宁市星宏房地产开发有限公司","星河明珠湾花园(五期)","普宁市国道324云落段西北侧、普宁市云落中学东南侧、寒妈水库西南侧,普宁市云落中学东侧、寒妈水库南侧","2024-05-30","普宁市","36","3","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011791" +"53","现售第【2024】019号","普宁市星宏房地产开发有限公司","星河明珠湾花园(五期)","普宁市国道324云落段西北侧、普宁市云落中学东南侧、寒妈水库西南侧,普宁市云落中学东侧、寒妈水库南侧","2024-05-30","普宁市","158","9","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011792" +"54","现售第【2024】018号","普宁市星宏房地产开发有限公司","星河明珠湾花园(五期)","普宁市国道324云落段西北侧、普宁市云落中学东南侧、寒妈水库西南侧,普宁市云落中学东侧、寒妈水库南侧","2024-05-30","普宁市","508","14","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011793" +"55","现售第【2024】017号","普宁市星宏房地产开发有限公司","星河明珠湾花园(五期)","普宁市国道324云落段西北侧、普宁市云落中学东南侧、寒妈水库西南侧,普宁市云落中学东侧、寒妈水库南侧","2024-05-30","普宁市","374","52","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011794" +"56","现售第【2024】016号","普宁市星宏房地产开发有限公司","星河明珠湾花园(五期)","普宁市国道324云落段西北侧、普宁市云落中学东南侧、寒妈水库西南侧,普宁市云落中学东侧、寒妈水库南侧","2024-05-30","普宁市","84","17","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011795" +"57","现售第【2024】015号","普宁市星宏房地产开发有限公司","星河明珠湾花园(五期)","普宁市国道324云落段西北侧、普宁市云落中学东南侧、寒妈水库西南侧,普宁市云落中学东侧、寒妈水库南侧","2024-05-30","普宁市","466","42","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011796" +"58","现售第【2024】014号","广东泰亨源实业有限公司","凯旋花园","普宁市军埠镇莲坛村","2024-05-21","普宁市","232","37","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011778" +"59","普建售许字(2024)第06号","普宁市丽达纺织有限公司","御锦阳光花园","普宁市池尾街道市科技工业园内御锦阳光花园","2024-05-17","普宁市","191","29","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011805" +"60","现售第【2024】013号","普宁市宏鹏房地产开发有限公司","嘉润新园","普宁大道大长陇村灰上片区路段北侧","2024-04-09","普宁市","645","306","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011769" +"61","现售第【2024】012号","普宁市宏鹏房地产开发有限公司","嘉润新园","普宁大道大长陇村灰上片区路段北侧","2024-04-09","普宁市","571","469","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011768" +"62","现售第【2024】011号","普宁市泓亨实业有限公司","江景园","普宁市赵厝寮路南侧、河滨路东侧","2024-04-02","","345","16","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011765" +"63","普建售许字【2024】第04号","普宁市星宏房地产开发有限公司","星河明珠湾花园(六期)","普宁市普惠高速公路南侧、寒妈水库西北侧","2024-03-22","普宁市","144","21","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011759" +"64","现售第【2024】010号","广东翔栩房地产开发有限公司","翔栩城市花园(一期)","普宁大道南侧、凤凰山公园北侧","2024-03-20","普宁市","502","51","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011746" +"65","现售第【2024】009号","广东翔栩房地产开发有限公司","翔栩城市花园(一期)","普宁大道南侧、凤凰山公园北侧","2024-03-20","普宁市","248","15","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011747" +"66","现售第【2024】008号","广东翔栩房地产开发有限公司","翔栩城市花园(一期)","普宁大道南侧、凤凰山公园北侧","2024-03-20","普宁市","258","18","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011745" +"67","现售第【2024】007号","广东翔栩房地产开发有限公司","翔栩城市花园(一期)","普宁大道南侧、凤凰山公园北侧","2024-03-20","普宁市","341","17","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011748" +"68","现售第【2024】006号","广东翔栩房地产开发有限公司","翔栩城市花园(一期)","普宁大道南侧、凤凰山公园北侧","2024-03-20","普宁市","186","53","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011749" +"69","现售第【2024】005号","广东翔栩房地产开发有限公司","翔栩城市花园(二期)","普宁大道南侧、凤凰山公园北侧","2024-03-20","普宁市","241","34","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011750" +"70","现售第【2024】004号","广东翔栩房地产开发有限公司","翔栩城市花园(二期)","普宁大道南侧、凤凰山公园北侧","2024-03-20","普宁市","372","94","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011751" +"71","现售第【2024】003号","广东翔栩房地产开发有限公司","翔栩城市花园(二期)","普宁大道南侧、凤凰山公园北侧","2024-03-20","普宁市","277","30","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011752" +"72","现售第【2024】002号","广东翔栩房地产开发有限公司","翔栩城市花园(二期)","普宁大道南侧、凤凰山公园北侧","2024-03-20","普宁市","248","27","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011753" +"73","现售第【2024】001号","广东翔栩房地产开发有限公司","翔栩城市花园(二期)","普宁大道南侧、凤凰山公园北侧","2024-03-20","普宁市","186","57","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011754" +"74","普建售许字【2024】第02号","普宁市星宏房地产开发有限公司","星河明珠湾花园(六期)","普宁市普惠高速公路南侧、寒妈水库西北侧","2024-01-26","普宁市","163","23","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011713" +"75","现售第【2023】048号","普宁市金泰房地产开发有限公司","商住楼(欢乐颂楼)","普宁市普宁大道北侧、赤华南路东侧","2023-12-04","普宁市","261","211","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011699" +"76","现售第【2023】047号","普宁市翔栩房地产开发有限公司","翔栩商业街(商住楼)","普宁市普宁大道南北侧、揭神路东侧","2023-11-28","普宁市","150","107","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011696" +"77","现售第【2023】046号","普宁市华荣实业投资有限公司","保利和府","普宁市324国道(高明段)东南侧规划寒妈东路北侧保利和府","2023-11-09","普宁市","310","33","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011670" +"78","现售第【2023】045号","普宁市华荣实业投资有限公司","保利和府","普宁市324国道(高明段)东南侧规划寒妈东路北侧保利和府","2023-11-09","普宁市","204","30","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011671" +"79","现售第【2023】044号","广东新东海电器有限公司","百美雅苑","普宁市流沙南街道泗竹埔村城南大道西侧","2023-11-08","普宁市","105","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011668" +"80","现售第【2023】043号","广东旭炫地产有限公司","百美花园","普宁市池尾大道(新寮段)东南侧","2023-11-08","普宁市","239","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011836" +"81","现售第【2023】042号","广东翔栩房地产开发有限公司","翔栩新城中心华府(一期)","普宁市新光南路东侧立新路南侧","2023-11-02","普宁市","522","246","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011656" +"82","现售第【2023】041号","广东翔栩房地产开发有限公司","翔栩新城中心华府(一期)","普宁市新光南路东侧立新路南侧","2023-11-02","普宁市","461","103","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011659" +"83","现售第【2023】040号","广东港丽投资有限公司","港泰公寓","普宁市高铁站广场西南侧","2023-10-18","普宁市","939","372","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011649" +"84","现售第【2023】039号","普宁市南园瑞锦纺织印染有限公司","盛世华府","普宁市北环大道(环市北路)南侧","2023-10-07","普宁市","577","9","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011631" +"85","普建售许字【2023】第16号","普宁市星宏房地产开发有限公司","星河明珠湾花园(六期)","普宁市普惠高速公路南侧、寒妈水库西北侧","2023-09-28","普宁市","370","34","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012068" +"86","现售第【2023】038号","普宁市翔应地产有限公司","翔栩嘉应华府","普宁市广达北路西侧金池路北侧","2023-09-26","普宁市","700","5","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011568" +"87","现售第【2023】037号","普宁市华荣实业投资有限公司","保利和府","普宁市324国道(高明段)东南侧规划寒妈东路北侧保利和府","2023-09-21","普宁市","106","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011552" +"88","现售第【2023】036号","普宁市星宏房地产开发有限公司","星河明珠湾花园(四期)","普宁市云落中学东南侧、寒妈水库南侧,国道324线云落段西北侧、寒妈水库南侧","2023-09-20","普宁市","56","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011605" +"89","现售第【2023】035号","普宁市星宏房地产开发有限公司","星河明珠湾花园(四期)","普宁市云落中学东南侧、寒妈水库南侧,国道324线云落段西北侧、寒妈水库南侧","2023-09-20","普宁市","194","2","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011606" +"90","现售第【2023】034号","普宁市星宏房地产开发有限公司","星河明珠湾花园(四期)","普宁市云落中学东南侧、寒妈水库南侧,国道324线云落段西北侧、寒妈水库南侧","2023-09-20","普宁市","666","10","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011607" +"91","现售第【2023】033号","普宁市星宏房地产开发有限公司","星河明珠湾花园(四期)","普宁市云落中学东南侧、寒妈水库南侧,国道324线云落段西北侧、寒妈水库南侧","2023-09-20","普宁市","280","2","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011608" +"92","现售第【2023】032号","普宁市星宏房地产开发有限公司","星河明珠湾花园(四期)","普宁市云落中学东南侧、寒妈水库南侧,国道324线云落段西北侧、寒妈水库南侧","2023-09-20","普宁市","221","1","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011610" +"93","现售第【2023】031号","普宁市星宏房地产开发有限公司","星河明珠湾花园(四期)","普宁市云落中学东南侧、寒妈水库南侧,国道324线云落段西北侧、寒妈水库南侧","2023-09-20","普宁市","268","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011611" +"94","现售第【2023】030号","普宁市星宏房地产开发有限公司","星河明珠湾花园(四期)","普宁市云落中学东南侧、寒妈水库南侧,国道324线云落段西北侧、寒妈水库南侧","2023-09-20","普宁市","163","4","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011612" +"95","现售第【2023】029号","普宁市星宏房地产开发有限公司","星河明珠湾花园(四期)","普宁市云落中学东南侧、寒妈水库南侧,国道324线云落段西北侧、寒妈水库南侧","2023-09-20","普宁市","226","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011613" +"96","现售第【2023】028号","普宁市星宏房地产开发有限公司","星河明珠湾花园(四期)","普宁市云落中学东南侧、寒妈水库南侧,国道324线云落段西北侧、寒妈水库南侧","2023-09-20","普宁市","154","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011614" +"97","现售第【2023】027号","普宁市星宏房地产开发有限公司","星河明珠湾花园(四期)","普宁市云落中学东南侧、寒妈水库南侧,国道324线云落段西北侧、寒妈水库南侧","2023-09-20","普宁市","311","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011615" +"98","现售第【2023】026号","普宁市星宏房地产开发有限公司","星河明珠湾花园(四期)","普宁市云落中学东南侧、寒妈水库南侧,国道324线云落段西北侧、寒妈水库南侧","2023-09-20","普宁市","38","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011616" +"99","现售第【2023】025号","普宁市星宏房地产开发有限公司","星河明珠湾花园(四期)","普宁市云落中学东南侧、寒妈水库南侧,国道324线云落段西北侧、寒妈水库南侧","2023-09-20","普宁市","38","1","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011617" +"100","现售第【2023】024号","普宁市华尔街投资发展有限公司","盛迪嘉光明花园","普宁市南华路北侧","2023-09-20","普宁市","329","16","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011597" +"101","现售第【2023】023号","普宁市华尔街投资发展有限公司","盛迪嘉光明花园","普宁市南华路北侧","2023-09-20","普宁市","280","2","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011598" +"102","现售第【2023】022号","普宁市华尔街投资发展有限公司","盛迪嘉光明花园","普宁市南华路北侧","2023-09-20","普宁市","233","7","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011599" +"103","现售第【2023】021号","普宁市华尔街投资发展有限公司","盛迪嘉光明花园","普宁市南华路北侧","2023-09-20","普宁市","334","25","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011600" +"104","现售第【2023】020号","普宁市华尔街投资发展有限公司","盛迪嘉光明花园","普宁市南华路北侧","2023-09-20","普宁市","536","22","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011601" +"105","普建售许字[2023]第15号","广东泰亨源实业有限公司","凯旋花园","普宁市军埠镇莲坛村","2023-09-20","普宁市","275","239","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012105" +"106","现售第【2023】019号","普宁市星宏房地产开发有限公司","星河明珠湾花园(三期)","普宁市广汕公路(云落段)西北侧","2023-09-18","普宁市","303","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011583" +"107","现售第【2023】018号","普宁市星宏房地产开发有限公司","星河明珠湾花园(三期)","普宁市广汕公路(云落段)西北侧","2023-09-18","普宁市","286","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011584" +"108","现售第【2023】017号","普宁市星宏房地产开发有限公司","星河明珠湾花园(三期)","普宁市广汕公路(云落段)西北侧","2023-09-18","普宁市","521","3","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011585" +"109","现售第【2023】016号","普宁市星宏房地产开发有限公司","星河明珠湾花园(三期)","普宁市广汕公路(云落段)西北侧","2023-09-18","普宁市","647","1","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011586" +"110","现售第【2023】015号","普宁市星宏房地产开发有限公司","星河明珠湾花园(三期)","普宁市广汕公路(云落段)西北侧","2023-09-15","普宁市","218","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011582" +"111","现售第【2023】014号","普宁市星宏房地产开发有限公司","星河明珠湾花园(三期)","普宁市广汕公路(云落段)西北侧","2023-09-15","普宁市","38","1","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011581" +"112","现售第【2023】013号","普宁市翔桦地产有限公司","翔栩水岸花园(二期)","普宁市康美大道西侧","2023-09-13","普宁市","437","50","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011564" +"113","现售第【2023】012号","普宁市翔应地产有限公司","翔栩嘉应华府","普宁市广达北路西侧金池路北侧","2023-09-13","普宁市","348","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011567" +"114","现售第【2023】011号","普宁市翔桦地产有限公司","翔栩水岸花园","普宁市揭神路西侧广东福尔莱制衣有限公司西北侧","2023-09-13","普宁市","1034","35","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011563" +"115","现售第【2023】010号","普宁市华荣实业投资有限公司","保利和府","普宁市324国道(高明段)东南侧规划寒妈东路北侧保利和府","2023-09-12","普宁市","177","12","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011549" +"116","现售第【2023】009号","普宁市华荣实业投资有限公司","保利和府","普宁市324国道(高明段)东南侧规划寒妈东路北侧保利和府","2023-09-12","普宁市","307","7","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011550" +"117","现售第【2023】008号","普宁市华荣实业投资有限公司","保利和府","普宁市324国道(高明段)东南侧规划寒妈东路北侧保利和府","2023-09-12","普宁市","455","3","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011551" +"118","现售第【2023】007号","普宁市华荣实业投资有限公司","保利和府","普宁市324国道(高明段)东南侧规划寒妈东路北侧保利和府","2023-09-12","普宁市","254","36","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011548" +"119","现售第【2023】006号","广东东和实业投资有限公司","盛迪嘉光明印象花园","普宁大道东侧东二环大道(原环市东路)南侧","2023-09-12","普宁市","611","455","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011517" +"120","现售第【2023】005号","广东东和实业投资有限公司","盛迪嘉光明印象花园","普宁大道东侧东二环大道(原环市东路)南侧","2023-09-12","普宁市","416","251","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011516" +"121","现售第【2023】004号","广东东和实业投资有限公司","盛迪嘉光明印象花园","普宁大道东侧东二环大道(原环市东路)南侧","2023-09-12","普宁市","1209","635","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011544" +"122","现售第【2023】003号","广东泰亨源实业有限公司","凯旋花园","普宁市军埠镇莲坛村","2023-09-08","普宁市","397","26","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011492" +"123","现售第【2023】002号","广东泰亨源实业有限公司","凯旋花园","普宁市军埠镇莲坛村","2023-09-08","普宁市","284","112","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011498" +"124","现售第【2023】001号","广东泰亨源实业有限公司","凯旋花园","普宁市军埠镇莲坛村","2023-09-08","普宁市","207","22","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011494" +"125","普建售许字(2023)第11号","普宁市方直恒泰房地产开发有限公司","方直普宁悦府","普宁大道(贵政山路段)北侧、大学路东侧","2023-07-07","普宁市","97","63","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012082" +"126","普建售许字[2022]第03号","广东泰亨源实业有限公司","凯旋花园","普宁市军埠镇莲坛村","2022-04-20","普宁市","157","27","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011994" +"127","普建售许字(2021)第22号","普宁市方直恒泰房地产开发有限公司","方直普宁悦府","普宁大道(贵政山路段)北侧、大学路东侧","2021-12-30","普宁市","186","2","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012069" +"128","普建售许字(2021)第16号","普宁市方直恒泰房地产开发有限公司","方直普宁悦府","普宁大道(贵政山路段)北侧、大学路东侧","2021-09-28","普宁市","131","1","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012070" +"129","现售第【2020】054号","普宁市鸿捷胜房地产开发有限公司","新华城","普宁市池尾街道新寮村广达北路西侧","2020-11-10","普宁市","2670","31","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011359" +"130","普房售许字【2020】第06号","普宁市碧桂园置业有限公司","普宁碧桂园","普宁市池尾街道塘塔路北侧","2020-09-29","普宁市","124","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011365" +"131","现售第【2020】053号","康美实业投资控股有限公司","康美·福临门公馆","普宁市流沙西街道城南大道北侧","2020-09-08","普宁市","695","15","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011328" +"132","现售第【2020】052号","普宁市俊嘉房地产开发有限公司","盛世华庭东区","普宁市流沙市区城关东路西侧、赤华北路东侧","2020-09-02","普宁市","159","5","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011312" +"133","现售第【2020】051号","普宁市永茂实业投资有限公司","滨湖华府","普宁市池尾街道金池路北侧新春路西侧","2020-08-20","普宁市","246","10","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011296" +"134","现售第【2020】050号","普宁市佳泰实业投资有限公司","春熙园","普宁市流沙北街道白沙陇路南侧","2020-08-20","普宁市","398","-9","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011297" +"135","现售第【2020】049号","广东万泰投资有限公司","万泰金融大厦","普宁市流沙市区普宁广场南侧万泰金融大厦","2020-08-17","普宁市","231","101","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011290" +"136","现售第【2020】048号","普宁市恒森投资有限公司","华美景轩","普宁市南溪镇老方村华美景轩","2020-07-13","普宁市","229","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011266" +"137","现售第【2020】047号","普宁市翔栩纺织有限公司","翔栩·帝景花园","普宁市普宁大道南侧揭神路东侧","2020-06-24","普宁市","14","10","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011236" +"138","现售第【2020】046号","普宁市翔栩纺织有限公司","翔栩·帝景花园","普宁市普宁大道南侧揭神路东侧","2020-06-23","普宁市","1642","78","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011240" +"139","现售第【2020】045号","普宁市赵厝寮投资有限公司","华桂苑","普宁市流沙大道北侧体育路西侧","2020-06-23","普宁市","240","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011222" +"140","现售第【2020】044号","普宁市合兴物流有限公司","普宁商贸广场","普宁市洪阳镇鸣岗村","2020-06-19","普宁市","135","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011224" +"141","现售第【2020】043号","普宁市维美表业有限公司","维美新城","普宁市里湖镇镇区安池公路北侧","2020-06-17","普宁市","671","37","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011214" +"142","现售第【2020】042号","普宁市恒润投资有限公司","御景城三区","普宁市流沙赤华北路与南华路交界处","2020-06-16","普宁市","771","8","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011197" +"143","现售第【2020】041号","普宁市恒润投资有限公司","御景城三区","普宁市流沙赤华北路与南华路交界处","2020-06-16","普宁市","1362","5","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011195" +"144","现售第【2020】040号","普宁市恒润投资有限公司","御景城","普宁市流沙市区广达北路东侧南华路北侧","2020-06-16","普宁市","1093","3","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011152" +"145","现售第【2020】039号","普宁市恒润投资有限公司","御景城二区","普宁市流沙市区环市北路南赤华路西侧","2020-06-16","普宁市","1651","5","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011150" +"146","现售第【2020】038号","普宁市恒润投资有限公司","御景城","普宁市流沙市区广达北路东侧南华路北侧","2020-06-16","普宁市","455","1","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011148" +"147","现售第【2020】037号","普宁市凯特曼投资有限公司","凯逸阳光","普宁市流沙文竹南路东侧","2020-06-16","普宁市","1007","21","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011042" +"148","现售第【2020】036号","普宁市俊嘉房地产开发有限公司","盛世华轩","普宁市流沙市区赤华北路西侧南华路南侧","2020-06-15","普宁市","509","29","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011161" +"149","现售第【2020】035号","普宁市金莎投资有限公司","时代中心","普宁市流沙市区环市北路南侧广达北路东侧","2020-06-15","普宁市","910","52","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011015" +"150","现售第【2020】034号","广东南方梅园生态村有限公司","南方梅园·山湖雅居","普宁市广汕公路(云落段)西北侧","2020-06-12","普宁市","191","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011167" +"151","现售第【2020】033号","广东南方梅园生态村有限公司","南方梅园·山湖雅居","普宁市广汕公路(云落段)西北侧","2020-06-12","普宁市","31","1","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011166" +"152","现售第【2020】032号","普宁市金盘科技有限公司","金桂园","普宁市流沙市区新河西路西侧","2020-06-12","普宁市","422","21","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011158" +"153","现售第【2020】031号","普宁市万泰购物广场有限公司","万泰汇购物中心","普宁市流沙市区普宁广场南侧","2020-06-12","普宁市","199","60","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011159" +"154","现售第【2020】030号","广东南方梅园生态村有限公司","南方梅园·山湖雅居","普宁市广汕公路(云落段)西北侧","2020-06-11","普宁市","19","1","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011132" +"155","现售第【2020】029号","广东南方梅园生态村有限公司","南方梅园·山湖雅居","普宁市广汕公路(云落段)西北侧","2020-06-11","普宁市","48","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011129" +"156","现售第【2020】028号","广东南方梅园生态村有限公司","南方梅园·山湖雅居","普宁市广汕公路(云落段)西北侧","2020-06-11","普宁市","63","4","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011127" +"157","现售第【2020】027号","广东南方梅园生态村有限公司","南方梅园·山湖雅居","普宁市广汕公路(云落段)西北侧","2020-06-11","普宁市","66","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011126" +"158","现售第【2020】026号","广东南方梅园生态村有限公司","南方梅园·山湖雅居","普宁市广汕公路(云落段)西北侧","2020-06-11","普宁市","248","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011160" +"159","现售第【2020】025号","广东南方梅园生态村有限公司","南方梅园·山湖雅居","普宁市广汕公路(云落段)西北侧","2020-06-11","普宁市","224","2","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011128" +"160","现售第【2020】024号","广东南方梅园生态村有限公司","南方梅园·山湖雅居","普宁市广汕公路(云落段)西北侧","2020-06-11","普宁市","95","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011130" +"161","现售第【2020】023号","广东南方梅园生态村有限公司","南方梅园·山湖雅居","普宁市广汕公路(云落段)西北侧","2020-06-11","普宁市","45","2","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011131" +"162","现售第【2020】022号","广东南方梅园生态村有限公司","南方梅园·山湖雅居","普宁市广汕公路(云落段)西北侧","2020-06-11","普宁市","44","2","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011133" +"163","现售第【2020】021号","广东南方梅园生态村有限公司","南方梅园·山湖雅居","普宁市广汕公路(云落段)西北侧","2020-06-11","普宁市","263","5","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011134" +"164","现售第【2020】020号","普宁市盛迪嘉置业投资有限公司","盛迪嘉花园","普宁市池尾街道上寮村广达北路西侧","2020-06-10","普宁市","344","1","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011073" +"165","现售第【2020】019号","普宁市金莎投资有限公司","时代中心","普宁市流沙市区环市北路南侧广达北路东侧","2020-06-10","普宁市","172","172","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011034" +"166","现售第【2020】018号","普宁市金莎投资有限公司","时代中心","普宁市流沙市区环市北路南侧广达北路东侧","2020-06-10","普宁市","640","106","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011014" +"167","现售第【2020】017号","普宁市金莎投资有限公司","时代中心","普宁市流沙市区环市北路南侧广达北路东侧","2020-06-10","普宁市","620","412","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011013" +"168","现售第【2020】016号","普宁市宏御房地产开发有限公司","宏御雅轩","普宁市占陇镇占陈村镇政府东侧","2020-06-10","普宁市","66","8","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011215" +"169","现售第【2020】015号","普宁市盘龙湾温泉度假村有限公司","盘龙湾花园","普宁市云落镇古安村","2020-06-10","普宁市","100","5","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011100" +"170","现售第【2020】014号","康美中药城(普宁)有限公司","普宁中药材专业市场","普宁市揭神路东侧普宁中药材专业市场","2020-06-10","普宁市","418","19","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011099" +"171","现售第【2020】013号","康美中药城(普宁)有限公司","普宁中药材专业市场","普宁市揭神路东侧普宁中药材专业市场","2020-06-10","普宁市","517","27","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011089" +"172","现售第【2020】012号","普宁市合润投资有限公司","南欣邸","普宁市大南山街道流石路东侧","2020-06-10","普宁市","100","13","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011087" +"173","现售第【2020】011号","广东嘉懋投资置业有限公司","尚东一品(南区)","普宁市流沙大道北侧普宁国际商品城","2020-06-10","普宁市","632","85","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011210" +"174","现售第【2020】010号","广东嘉懋投资置业有限公司","尚东一品(北区)","普宁市流沙大道北侧普宁国际商品城","2020-06-10","普宁市","452","55","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011211" +"175","现售第【2020】009号","广东嘉懋投资置业有限公司","尚东一品(北区)","普宁市流沙大道北侧普宁国际商品城","2020-06-10","普宁市","537","53","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011212" +"176","现售第【2020】008号","广东嘉懋投资置业有限公司","尚东步行街","普宁市流沙大道北侧普宁国际商品城","2020-06-10","普宁市","325","263","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011209" +"177","现售第【2020】007号","普宁市汇润地产有限公司","汇润·幸福里","普宁市流沙市区新河西路西侧","2020-06-09","普宁市","416","82","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011110" +"178","现售第【2020】006号","普宁市汇润地产有限公司","汇润·吉祥里","普宁市占陇镇镇区广汕公路南侧","2020-06-09","普宁市","583","51","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011113" +"179","现售第【2020】005号","普宁市汇润地产有限公司","汇润·幸福里","普宁市流沙市区新河西路西侧","2020-06-09","普宁市","8","1","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011118" +"180","现售第【2020】004号","普宁市翔栩房地产开发有限公司","翔栩万泰城","揭神路西侧","2020-06-08","普宁市","730","3","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011088" +"181","现售第【2020】003号","普宁市盈泰投资有限公司","盈泰华府","普宁市普宁大道北侧揭神路西侧","2020-06-08","普宁市","872","211","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011026" +"182","现售第【2020】002号","普宁市骏景房地产开发有限公司","丽江骏景花园","普宁市流沙新河东路东侧","2020-06-04","普宁市","703","2","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011037" +"183","现售第【2020】001号","广东南方梅园生态村有限公司","山湖名庭","普宁市广汕公路(云落段)西北侧","2020-06-02","普宁市","872","18","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011023" +"184","普房售许字【2019】第16号","普宁市碧桂园置业有限公司","普宁碧桂园","普宁市池尾街道塘塔路北侧","2020-03-17","普宁市","94","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011045" +"185","普房售许字【2019】第17号","普宁市盘龙湾温泉度假村有限公司","盘龙湾花园","普宁市云落镇古安村","2019-11-20","普宁市","48","34","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011377" +"186","普房售许字【2019】第15号","普宁市碧桂园置业有限公司","普宁碧桂园","普宁市池尾街道塘塔路北侧","2019-10-30","普宁市","60","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011124" +"187","普房售许字【2019】第14号","普宁市碧桂园置业有限公司","普宁碧桂园","普宁市池尾街道塘塔路北侧","2019-10-08","普宁市","189","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011061" +"188","普房售许字【2019】第06号","普宁市碧桂园置业有限公司","普宁碧桂园","普宁市池尾街道塘塔路北侧","2019-04-30","普宁市","97","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011062" +"189","2019005","康美中药城(普宁)有限公司","普宁中药材专业市场","普宁市揭神路东侧普宁中药材专业市场","2019-03-19","普宁市","1","1","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=329" +"190","普2019-01,02","普宁市碧桂园置业有限公司","普宁碧桂园","普宁市池尾街道塘塔路北侧","2019-02-15","普宁市","318","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=-317" +"191","普建售许(2019)第03","广东超亿美投资有限公司","华美创意园","普宁市区环市北路南侧","2019-01-28","普宁市","311","289","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011121" +"192","普建售许字【2018】第014号","普宁市翔栩房地产开发有限公司","翔栩*商业街(商铺)","普宁大道南北侧揭神路东侧","2018-12-05","普宁市","14","12","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011871" +"193","普建售许字[2018]第10号","广东泰亨源实业有限公司","凯旋花园","普宁市军埠镇莲坛村","2018-10-22","普宁市","104","9","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011620" +"194","普建售许字(2018)第003号","普宁市华隆兴房地产开发有限公司","桂荣名轩","普宁市池尾街道华市村南华路南侧桂荣名轩","2018-06-01","普宁市","702","-2","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011226" +"195","编号(2015)字第006","普宁市金莎投资有限公司","时代中心","普宁市流沙市区环市北路南侧广达北路东侧","2018-02-04","普宁市","715","554","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011033" +"196","普2015年-010","广东嘉懋投资置业有限公司","尚东明珠","普宁市流沙大道北侧普宁国际商品城","2017-06-22","普宁市","485","277","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011213" +"197","2016-007","普宁市盘龙湾温泉度假村有限公司","盘龙湾花园","普宁市云落镇古安村","2016-09-18","普宁市","76","1","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=-184" +"198","普2015-014","广东天豪投资有限公司","翠轩花园","普宁市流沙市区玉华南路西侧","2016-01-05","普宁市","448","196","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=-162" +"199","普2015--005","康美中药城(普宁)有限公司","平安里花园","普宁流沙市区文竹北路东环市北路南平安里花园","2015-11-25","普宁市","116","20","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=-159" +"200","普现房2015-004","普宁市万泰购物广场有限公司","万泰汇购物中心","普宁市流沙市区普宁广场南侧","2015-11-08","普宁市","170","120","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011163" +"201","普2015-005","康美中药城(普宁)有限公司","平安里花园","普宁流沙市区文竹北路东环市北路南平安里花园","2015-10-08","普宁市","614","4","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=-146" +"202","普2015-011","普宁市维美表业有限公司","维美新城","普宁市里湖镇镇区安池公路北侧","2015-09-02","普宁市","73","73","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=186" +"203","【2015】009","普宁市友兴实业有限公司","万泰汇大厦","普宁市流沙市区普宁广场南侧","2015-08-07","普宁市","565","379","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011181" +"204","普2014--007","普宁市创展电脑科技有限公司","创展华府","普宁市流沙中河工业区引榕东路北侧","2014-10-31","普宁市","235","36","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=-129" +"205","普2014-003","广东天豪投资有限公司","紫晖花园","广东省普宁市广达东路","2014-03-20","普宁市","266","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=-101" +"206","普现房2013-002","普宁市万泰购物广场有限公司","万泰汇购物中心","普宁市流沙市区普宁广场南侧","2013-12-12","普宁市","81","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011164" +"207","普现房2013-001","普宁市万泰购物广场有限公司","万泰汇购物中心","普宁市流沙市区普宁广场南侧","2013-12-03","普宁市","257","31","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011165" +"208","普2013--001之二","普宁市翔栩房地产开发有限公司","翔栩万泰城","揭神路西侧","2013-05-14","普宁市","349","4","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=-106" +"209","普2013--001之一","普宁市翔栩房地产开发有限公司","翔栩万泰城","揭神路西侧","2013-01-07","普宁市","911","20","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=-97" +"210","普2012--007","普宁市松桂房地产开发有限公司","松竹园","普宁市流沙市区新光北路西侧","2012-09-28","普宁市","36","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=-98" +"211","普2012--004","普宁市桂荣碧水湾房地产开发有限公司","桂荣碧水湾","普宁市里湖镇河头村河头小学东侧","2012-08-13","普宁市","120","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=-31" +"212","普2012-002","普宁市松桂房地产开发有限公司","松竹园","普宁市流沙市区新光北路西侧","2012-04-10","普宁市","72","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=-30" +"213","普2012-001","普宁市捷佳房地产开发有限公司","吉华园","普宁市建设路西侧","2012-04-01","普宁市","128","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=-27" +"214","普2011-006","广东好盈投资有限公司","万盛花园","普宁市流沙南街道光草洋村城南大道南侧文竹西侧","2011-11-29","普宁市","224","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=-25" +"215","普2011-004","普宁市华隆兴房地产开发有限公司","桂荣·君林天下","普宁市池尾华市金池路南侧","2011-08-26","普宁市","34","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=-19" +"216","普2011-003","普宁市桂荣碧水湾房地产开发有限公司","桂荣碧水湾","普宁市里湖镇河头村河头小学东侧","2011-07-27","普宁市","120","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=-15" +"217","普府国用(2003)第特000765号","普宁市创宇房地产开发有限公司","玉湖雅苑","普宁市环城南路","2011-03-31","普宁市","84","84","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=-14" +"218","普2011-001","普宁市汇润地产有限公司","汇润·雅苑","普宁市流沙西街道赵厝寮村广达东","2011-03-08","普宁市","109","0","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=-12" +"219","2010-003","普宁市流沙广厦房地产开发有限公司南园经营部","盛世华庭西区","普宁市流沙市区赤华北路东侧","2010-12-28","普宁市","247","10","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=-5" +"220","2010-002","普宁市华隆兴房地产开发有限公司","桂荣·君林天下","普宁市池尾华市金池路南侧","2010-07-15","普宁市","79","2","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=4" +"221","2010-001","普宁市中信房地产开发有限公司","中信华府","普宁市流沙新河东侧","2010-05-14","普宁市","256","256","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=7" +"222","2009字第003之二号","普宁市中信房地产开发有限公司","中信华府","普宁市流沙新河东侧","2009-11-03","普宁市","532","532","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=9" +"223","2009字第003之一号","普宁市中信房地产开发有限公司","中信华府","普宁市流沙新河东侧","2009-07-15","普宁市","434","434","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=8" +"224","2009-001","普宁市桂荣碧水湾房地产开发有限公司","桂荣碧水湾","普宁市里湖镇河头村河头小学东侧","2009-02-26","普宁市","104","6","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=3" +"225","2008-002","普宁市福盛房地产开发有限公司","福盛花园","普宁市广达东路东侧","2008-12-15","普宁市","13","13","http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=6" \ No newline at end of file diff --git a/data.json b/PreSaleLicense/data.json similarity index 94% rename from data.json rename to PreSaleLicense/data.json index eb6d1c0..fb178d0 100644 --- a/data.json +++ b/PreSaleLicense/data.json @@ -37,18 +37,6 @@ }, { "序号": "4", - "许可证号": "空", - "开发企业": "普宁市宏鹏房地产开发有限公司", - "项目名称": "嘉润新园", - "项目地址": "普宁大道大长陇村灰上片区路段北侧", - "批准时间": "2025-12-12", - "所在区域": "普宁市", - "总套数": 779, - "可售套数": 779, - "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012087" - }, - { - "序号": "5", "许可证号": "普建售许字(2025)第18号", "开发企业": "广东翔栩房地产开发有限公司", "项目名称": "瑞景荟花园", @@ -60,7 +48,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012099" }, { - "序号": "6", + "序号": "5", "许可证号": "普建售许字【2025】第17号", "开发企业": "普宁市星宏房地产开发有限公司", "项目名称": "星河明珠湾花园(七期)", @@ -72,7 +60,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012095" }, { - "序号": "7", + "序号": "6", "许可证号": "现售第【2025】022号", "开发企业": "普宁市鸿发投资有限公司", "项目名称": "新华名园", @@ -84,7 +72,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012092" }, { - "序号": "8", + "序号": "7", "许可证号": "现售第【2025】021号", "开发企业": "普宁市鸿发投资有限公司", "项目名称": "新华名园", @@ -96,7 +84,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012091" }, { - "序号": "9", + "序号": "8", "许可证号": "现售第【2025】020号", "开发企业": "普宁市鸿发投资有限公司", "项目名称": "新华名园", @@ -108,7 +96,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012090" }, { - "序号": "10", + "序号": "9", "许可证号": "现售第【2025】019号", "开发企业": "普宁市鸿发投资有限公司", "项目名称": "新华名园", @@ -120,7 +108,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012089" }, { - "序号": "11", + "序号": "10", "许可证号": "现售第【2025】018号", "开发企业": "普宁市华荣实业投资有限公司", "项目名称": "保利和府", @@ -132,7 +120,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012094" }, { - "序号": "12", + "序号": "11", "许可证号": "普建售许字(2025)第16号", "开发企业": "广东翔栩房地产开发有限公司", "项目名称": "瑞景荟花园", @@ -144,7 +132,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012088" }, { - "序号": "13", + "序号": "12", "许可证号": "普建售许字〔2025〕第15号", "开发企业": "普宁市丽达纺织有限公司", "项目名称": "御锦阳光花园", @@ -156,7 +144,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012075" }, { - "序号": "14", + "序号": "13", "许可证号": "现售第【2025】017号", "开发企业": "普宁市吉之旅房地产开发有限公司", "项目名称": "吉之里", @@ -168,7 +156,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012038" }, { - "序号": "15", + "序号": "14", "许可证号": "现售第【2025】016号", "开发企业": "普宁市吉之旅房地产开发有限公司", "项目名称": "吉之里", @@ -180,7 +168,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012059" }, { - "序号": "16", + "序号": "15", "许可证号": "现售第【2025】015号", "开发企业": "普宁市吉之旅房地产开发有限公司", "项目名称": "吉之里", @@ -192,7 +180,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012060" }, { - "序号": "17", + "序号": "16", "许可证号": "现售第【2025】014号", "开发企业": "普宁骏合房地产开发有限公司", "项目名称": "中骏·云景府", @@ -204,7 +192,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012062" }, { - "序号": "18", + "序号": "17", "许可证号": "现售第【2025】013号", "开发企业": "普宁骏合房地产开发有限公司", "项目名称": "中骏·云景府", @@ -216,19 +204,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012063" }, { - "序号": "19", - "许可证号": "空", - "开发企业": "揭阳普宁万洋众创城科技有限公司", - "项目名称": "普宁万洋众创城项目(一期)", - "项目地址": "揭阳市普宁市英歌山普宁产业转移工业园,坛北路北侧", - "批准时间": "2025-10-15", - "所在区域": "普宁市", - "总套数": 174, - "可售套数": 174, - "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012037" - }, - { - "序号": "20", + "序号": "18", "许可证号": "现售第【2025】012号", "开发企业": "揭阳普宁万洋众创城科技有限公司", "项目名称": "普宁万洋众创城项目(一期)", @@ -240,7 +216,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012032" }, { - "序号": "21", + "序号": "19", "许可证号": "现售第【2025】011号", "开发企业": "普宁市丽达纺织有限公司", "项目名称": "御锦阳光花园", @@ -252,7 +228,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012025" }, { - "序号": "22", + "序号": "20", "许可证号": "现售第【2025】010号", "开发企业": "普宁市丽达纺织有限公司", "项目名称": "御锦阳光花园", @@ -264,7 +240,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012026" }, { - "序号": "23", + "序号": "21", "许可证号": "现售第【2025】009号", "开发企业": "普宁市丽达纺织有限公司", "项目名称": "御锦阳光花园", @@ -276,7 +252,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012027" }, { - "序号": "24", + "序号": "22", "许可证号": "现售第【2025】008号", "开发企业": "普宁市丽达纺织有限公司", "项目名称": "御锦阳光花园", @@ -288,7 +264,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012024" }, { - "序号": "25", + "序号": "23", "许可证号": "普建售许字(2025)第14号", "开发企业": "普宁市星宏房地产开发有限公司", "项目名称": "星河明珠湾花园(七期)", @@ -300,7 +276,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012030" }, { - "序号": "26", + "序号": "24", "许可证号": "现售第【2025】007号", "开发企业": "普宁骏合房地产开发有限公司", "项目名称": "中骏·云景府", @@ -312,7 +288,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012001" }, { - "序号": "27", + "序号": "25", "许可证号": "现售第【2025】006号", "开发企业": "普宁骏合房地产开发有限公司", "项目名称": "中骏·云景府", @@ -324,7 +300,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012002" }, { - "序号": "28", + "序号": "26", "许可证号": "现售第【2025】005号", "开发企业": "普宁骏合房地产开发有限公司", "项目名称": "中骏·云景府", @@ -336,7 +312,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012003" }, { - "序号": "29", + "序号": "27", "许可证号": "现售第【2025】004号", "开发企业": "普宁骏合房地产开发有限公司", "项目名称": "中骏·云景府", @@ -348,7 +324,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012004" }, { - "序号": "30", + "序号": "28", "许可证号": "普建售许字(2025)第13号", "开发企业": "普宁市方直恒泰房地产开发有限公司", "项目名称": "方直普宁悦府", @@ -360,7 +336,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011995" }, { - "序号": "31", + "序号": "29", "许可证号": "普建售许字【2025】第12号", "开发企业": "揭阳普宁万洋众创城科技有限公司", "项目名称": "普宁万洋众创城项目(一期)第三批工程", @@ -372,7 +348,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012035" }, { - "序号": "32", + "序号": "30", "许可证号": "普建售许字〔2025〕第11号", "开发企业": "普宁市丽达纺织有限公司", "项目名称": "御锦阳光花园", @@ -384,7 +360,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011989" }, { - "序号": "33", + "序号": "31", "许可证号": "普建售许字(2025)第09号", "开发企业": "普宁市星宏房地产开发有限公司", "项目名称": "星河明珠湾花园(七期)", @@ -396,7 +372,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011979" }, { - "序号": "34", + "序号": "32", "许可证号": "普建售许字【2025】第08号", "开发企业": "普宁市星宏房地产开发有限公司", "项目名称": "星河明珠湾花园(六期)", @@ -408,7 +384,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011963" }, { - "序号": "35", + "序号": "33", "许可证号": "普建售许字【2025】第07号", "开发企业": "普宁市星宏房地产开发有限公司", "项目名称": "星河明珠湾花园(七期)", @@ -420,7 +396,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011964" }, { - "序号": "36", + "序号": "34", "许可证号": "普建售许字【2025】第06号", "开发企业": "普宁市星宏房地产开发有限公司", "项目名称": "星河明珠湾花园(七期)", @@ -432,7 +408,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011953" }, { - "序号": "37", + "序号": "35", "许可证号": "普建售许字【2025】第02号", "开发企业": "普宁市星宏房地产开发有限公司", "项目名称": "星河明珠湾花园(七期)", @@ -444,7 +420,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011938" }, { - "序号": "38", + "序号": "36", "许可证号": "现售第【2025】003号", "开发企业": "普宁市方直恒泰房地产开发有限公司", "项目名称": "方直普宁悦府", @@ -456,7 +432,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011933" }, { - "序号": "39", + "序号": "37", "许可证号": "现售第【2025】002号", "开发企业": "普宁市方直恒泰房地产开发有限公司", "项目名称": "方直普宁悦府", @@ -468,7 +444,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011935" }, { - "序号": "40", + "序号": "38", "许可证号": "普建售许字【2025】第01号", "开发企业": "揭阳普宁万洋众创城科技有限公司", "项目名称": "普宁万洋众创城项目(一期)第二批工程", @@ -480,7 +456,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011981" }, { - "序号": "41", + "序号": "39", "许可证号": "现售第【2024】029号", "开发企业": "广东超亿美投资有限公司", "项目名称": "华美汇悦中心", @@ -492,7 +468,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011922" }, { - "序号": "42", + "序号": "40", "许可证号": "现售第【2024】028号", "开发企业": "广东翔栩房地产开发有限公司", "项目名称": "翔栩城市花园(三期)", @@ -504,7 +480,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011914" }, { - "序号": "43", + "序号": "41", "许可证号": "现售第【2024】027号", "开发企业": "广东翔栩房地产开发有限公司", "项目名称": "翔栩城市花园(三期)", @@ -516,7 +492,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011916" }, { - "序号": "44", + "序号": "42", "许可证号": "现售第【2024】026号", "开发企业": "广东翔栩房地产开发有限公司", "项目名称": "翔栩城市花园(三期)", @@ -528,7 +504,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011909" }, { - "序号": "45", + "序号": "43", "许可证号": "普建售许字(2024)第12号", "开发企业": "广东泰亨源实业有限公司", "项目名称": "凯旋花园", @@ -540,7 +516,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011958" }, { - "序号": "46", + "序号": "44", "许可证号": "普建售许字【2024】第11号", "开发企业": "普宁市星宏房地产开发有限公司", "项目名称": "星河明珠湾花园(六期)", @@ -552,7 +528,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011908" }, { - "序号": "47", + "序号": "45", "许可证号": "现售第【2024】025号", "开发企业": "普宁市浩顺房地产开发有限公司", "项目名称": "侨光新园", @@ -564,19 +540,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011898" }, { - "序号": "48", - "许可证号": "空", - "开发企业": "普宁市星宏房地产开发有限公司", - "项目名称": "星河明珠湾花园(五期)", - "项目地址": "普宁市国道324云落段西北侧、普宁市云落中学东南侧、寒妈水库西南侧,普宁市云落中学东侧、寒妈水库南侧", - "批准时间": "2024-11-08", - "所在区域": "普宁市", - "总套数": 1648, - "可售套数": 1564, - "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011889" - }, - { - "序号": "49", + "序号": "46", "许可证号": "普建售许字(2024)第09号", "开发企业": "普宁市丽达纺织有限公司", "项目名称": "御锦阳光花园", @@ -588,7 +552,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011903" }, { - "序号": "50", + "序号": "47", "许可证号": "普建售许字【2024】第08号", "开发企业": "普宁市星宏房地产开发有限公司", "项目名称": "星河明珠湾花园(六期)", @@ -600,7 +564,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011868" }, { - "序号": "51", + "序号": "48", "许可证号": "现售第【2024】024号", "开发企业": "普宁市南园瑞锦纺织印染有限公司", "项目名称": "盛世华府", @@ -612,7 +576,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011863" }, { - "序号": "52", + "序号": "49", "许可证号": "现售第【2024】023号", "开发企业": "普宁市汇泰恒业房地产开发有限公司", "项目名称": "馨源轩", @@ -624,19 +588,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011848" }, { - "序号": "53", - "许可证号": "空", - "开发企业": "广东翔栩房地产开发有限公司", - "项目名称": "翔栩城市花园(二期)", - "项目地址": "普宁大道南侧、凤凰山公园北侧", - "批准时间": "2024-07-02", - "所在区域": "普宁市", - "总套数": 4, - "可售套数": 1, - "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011808" - }, - { - "序号": "54", + "序号": "50", "许可证号": "现售第【2024】022号", "开发企业": "普宁市星宏房地产开发有限公司", "项目名称": "星河明珠湾花园(五期)", @@ -648,7 +600,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011789" }, { - "序号": "55", + "序号": "51", "许可证号": "现售第【2024】021号", "开发企业": "普宁市星宏房地产开发有限公司", "项目名称": "星河明珠湾花园(五期)", @@ -660,7 +612,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011790" }, { - "序号": "56", + "序号": "52", "许可证号": "现售第【2024】020号", "开发企业": "普宁市星宏房地产开发有限公司", "项目名称": "星河明珠湾花园(五期)", @@ -672,7 +624,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011791" }, { - "序号": "57", + "序号": "53", "许可证号": "现售第【2024】019号", "开发企业": "普宁市星宏房地产开发有限公司", "项目名称": "星河明珠湾花园(五期)", @@ -684,7 +636,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011792" }, { - "序号": "58", + "序号": "54", "许可证号": "现售第【2024】018号", "开发企业": "普宁市星宏房地产开发有限公司", "项目名称": "星河明珠湾花园(五期)", @@ -696,7 +648,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011793" }, { - "序号": "59", + "序号": "55", "许可证号": "现售第【2024】017号", "开发企业": "普宁市星宏房地产开发有限公司", "项目名称": "星河明珠湾花园(五期)", @@ -708,7 +660,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011794" }, { - "序号": "60", + "序号": "56", "许可证号": "现售第【2024】016号", "开发企业": "普宁市星宏房地产开发有限公司", "项目名称": "星河明珠湾花园(五期)", @@ -720,7 +672,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011795" }, { - "序号": "61", + "序号": "57", "许可证号": "现售第【2024】015号", "开发企业": "普宁市星宏房地产开发有限公司", "项目名称": "星河明珠湾花园(五期)", @@ -732,19 +684,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011796" }, { - "序号": "62", - "许可证号": "空", - "开发企业": "普宁市华荣实业投资有限公司", - "项目名称": "保利和府", - "项目地址": "普宁市324国道(高明段)东南侧规划寒妈东路北侧保利和府", - "批准时间": "2024-05-24", - "所在区域": "普宁市", - "总套数": 911, - "可售套数": 659, - "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011783" - }, - { - "序号": "63", + "序号": "58", "许可证号": "现售第【2024】014号", "开发企业": "广东泰亨源实业有限公司", "项目名称": "凯旋花园", @@ -756,7 +696,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011778" }, { - "序号": "64", + "序号": "59", "许可证号": "普建售许字(2024)第06号", "开发企业": "普宁市丽达纺织有限公司", "项目名称": "御锦阳光花园", @@ -768,7 +708,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011805" }, { - "序号": "65", + "序号": "60", "许可证号": "现售第【2024】013号", "开发企业": "普宁市宏鹏房地产开发有限公司", "项目名称": "嘉润新园", @@ -780,7 +720,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011769" }, { - "序号": "66", + "序号": "61", "许可证号": "现售第【2024】012号", "开发企业": "普宁市宏鹏房地产开发有限公司", "项目名称": "嘉润新园", @@ -792,7 +732,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011768" }, { - "序号": "67", + "序号": "62", "许可证号": "现售第【2024】011号", "开发企业": "普宁市泓亨实业有限公司", "项目名称": "江景园", @@ -804,7 +744,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011765" }, { - "序号": "68", + "序号": "63", "许可证号": "普建售许字【2024】第04号", "开发企业": "普宁市星宏房地产开发有限公司", "项目名称": "星河明珠湾花园(六期)", @@ -816,7 +756,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011759" }, { - "序号": "69", + "序号": "64", "许可证号": "现售第【2024】010号", "开发企业": "广东翔栩房地产开发有限公司", "项目名称": "翔栩城市花园(一期)", @@ -828,7 +768,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011746" }, { - "序号": "70", + "序号": "65", "许可证号": "现售第【2024】009号", "开发企业": "广东翔栩房地产开发有限公司", "项目名称": "翔栩城市花园(一期)", @@ -840,7 +780,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011747" }, { - "序号": "71", + "序号": "66", "许可证号": "现售第【2024】008号", "开发企业": "广东翔栩房地产开发有限公司", "项目名称": "翔栩城市花园(一期)", @@ -852,7 +792,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011745" }, { - "序号": "72", + "序号": "67", "许可证号": "现售第【2024】007号", "开发企业": "广东翔栩房地产开发有限公司", "项目名称": "翔栩城市花园(一期)", @@ -864,7 +804,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011748" }, { - "序号": "73", + "序号": "68", "许可证号": "现售第【2024】006号", "开发企业": "广东翔栩房地产开发有限公司", "项目名称": "翔栩城市花园(一期)", @@ -876,7 +816,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011749" }, { - "序号": "74", + "序号": "69", "许可证号": "现售第【2024】005号", "开发企业": "广东翔栩房地产开发有限公司", "项目名称": "翔栩城市花园(二期)", @@ -888,7 +828,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011750" }, { - "序号": "75", + "序号": "70", "许可证号": "现售第【2024】004号", "开发企业": "广东翔栩房地产开发有限公司", "项目名称": "翔栩城市花园(二期)", @@ -900,7 +840,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011751" }, { - "序号": "76", + "序号": "71", "许可证号": "现售第【2024】003号", "开发企业": "广东翔栩房地产开发有限公司", "项目名称": "翔栩城市花园(二期)", @@ -912,7 +852,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011752" }, { - "序号": "77", + "序号": "72", "许可证号": "现售第【2024】002号", "开发企业": "广东翔栩房地产开发有限公司", "项目名称": "翔栩城市花园(二期)", @@ -924,7 +864,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011753" }, { - "序号": "78", + "序号": "73", "许可证号": "现售第【2024】001号", "开发企业": "广东翔栩房地产开发有限公司", "项目名称": "翔栩城市花园(二期)", @@ -936,31 +876,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011754" }, { - "序号": "79", - "许可证号": "空", - "开发企业": "广东翔栩房地产开发有限公司", - "项目名称": "翔栩新城中心华府(一期)", - "项目地址": "普宁市新光南路东侧立新路南侧", - "批准时间": "2024-03-19", - "所在区域": "普宁市", - "总套数": 494, - "可售套数": 494, - "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011744" - }, - { - "序号": "80", - "许可证号": "空", - "开发企业": "普宁华创文实业开发有限公司", - "项目名称": "唐商花园", - "项目地址": "普宁市北环大道(流沙东街道斗文村段)北侧", - "批准时间": "2024-03-12", - "所在区域": "普宁市", - "总套数": 1115, - "可售套数": 1013, - "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011729" - }, - { - "序号": "81", + "序号": "74", "许可证号": "普建售许字【2024】第02号", "开发企业": "普宁市星宏房地产开发有限公司", "项目名称": "星河明珠湾花园(六期)", @@ -972,19 +888,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011713" }, { - "序号": "82", - "许可证号": "空", - "开发企业": "普宁市星宏房地产开发有限公司", - "项目名称": "星河明珠湾花园(四期)", - "项目地址": "普宁市云落中学东南侧、寒妈水库南侧,国道324线云落段西北侧、寒妈水库南侧", - "批准时间": "2023-12-26", - "所在区域": "普宁市", - "总套数": 1815, - "可售套数": 1616, - "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011708" - }, - { - "序号": "83", + "序号": "75", "许可证号": "现售第【2023】048号", "开发企业": "普宁市金泰房地产开发有限公司", "项目名称": "商住楼(欢乐颂楼)", @@ -996,7 +900,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011699" }, { - "序号": "84", + "序号": "76", "许可证号": "现售第【2023】047号", "开发企业": "普宁市翔栩房地产开发有限公司", "项目名称": "翔栩商业街(商住楼)", @@ -1008,7 +912,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011696" }, { - "序号": "85", + "序号": "77", "许可证号": "现售第【2023】046号", "开发企业": "普宁市华荣实业投资有限公司", "项目名称": "保利和府", @@ -1020,7 +924,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011670" }, { - "序号": "86", + "序号": "78", "许可证号": "现售第【2023】045号", "开发企业": "普宁市华荣实业投资有限公司", "项目名称": "保利和府", @@ -1032,7 +936,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011671" }, { - "序号": "87", + "序号": "79", "许可证号": "现售第【2023】044号", "开发企业": "广东新东海电器有限公司", "项目名称": "百美雅苑", @@ -1044,7 +948,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011668" }, { - "序号": "88", + "序号": "80", "许可证号": "现售第【2023】043号", "开发企业": "广东旭炫地产有限公司", "项目名称": "百美花园", @@ -1056,7 +960,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011836" }, { - "序号": "89", + "序号": "81", "许可证号": "现售第【2023】042号", "开发企业": "广东翔栩房地产开发有限公司", "项目名称": "翔栩新城中心华府(一期)", @@ -1068,7 +972,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011656" }, { - "序号": "90", + "序号": "82", "许可证号": "现售第【2023】041号", "开发企业": "广东翔栩房地产开发有限公司", "项目名称": "翔栩新城中心华府(一期)", @@ -1080,7 +984,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011659" }, { - "序号": "91", + "序号": "83", "许可证号": "现售第【2023】040号", "开发企业": "广东港丽投资有限公司", "项目名称": "港泰公寓", @@ -1092,7 +996,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011649" }, { - "序号": "92", + "序号": "84", "许可证号": "现售第【2023】039号", "开发企业": "普宁市南园瑞锦纺织印染有限公司", "项目名称": "盛世华府", @@ -1104,7 +1008,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011631" }, { - "序号": "93", + "序号": "85", "许可证号": "普建售许字【2023】第16号", "开发企业": "普宁市星宏房地产开发有限公司", "项目名称": "星河明珠湾花园(六期)", @@ -1116,7 +1020,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012068" }, { - "序号": "94", + "序号": "86", "许可证号": "现售第【2023】038号", "开发企业": "普宁市翔应地产有限公司", "项目名称": "翔栩嘉应华府", @@ -1128,7 +1032,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011568" }, { - "序号": "95", + "序号": "87", "许可证号": "现售第【2023】037号", "开发企业": "普宁市华荣实业投资有限公司", "项目名称": "保利和府", @@ -1140,7 +1044,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011552" }, { - "序号": "96", + "序号": "88", "许可证号": "现售第【2023】036号", "开发企业": "普宁市星宏房地产开发有限公司", "项目名称": "星河明珠湾花园(四期)", @@ -1152,7 +1056,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011605" }, { - "序号": "97", + "序号": "89", "许可证号": "现售第【2023】035号", "开发企业": "普宁市星宏房地产开发有限公司", "项目名称": "星河明珠湾花园(四期)", @@ -1164,7 +1068,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011606" }, { - "序号": "98", + "序号": "90", "许可证号": "现售第【2023】034号", "开发企业": "普宁市星宏房地产开发有限公司", "项目名称": "星河明珠湾花园(四期)", @@ -1176,7 +1080,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011607" }, { - "序号": "99", + "序号": "91", "许可证号": "现售第【2023】033号", "开发企业": "普宁市星宏房地产开发有限公司", "项目名称": "星河明珠湾花园(四期)", @@ -1188,7 +1092,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011608" }, { - "序号": "100", + "序号": "92", "许可证号": "现售第【2023】032号", "开发企业": "普宁市星宏房地产开发有限公司", "项目名称": "星河明珠湾花园(四期)", @@ -1200,7 +1104,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011610" }, { - "序号": "101", + "序号": "93", "许可证号": "现售第【2023】031号", "开发企业": "普宁市星宏房地产开发有限公司", "项目名称": "星河明珠湾花园(四期)", @@ -1212,7 +1116,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011611" }, { - "序号": "102", + "序号": "94", "许可证号": "现售第【2023】030号", "开发企业": "普宁市星宏房地产开发有限公司", "项目名称": "星河明珠湾花园(四期)", @@ -1224,7 +1128,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011612" }, { - "序号": "103", + "序号": "95", "许可证号": "现售第【2023】029号", "开发企业": "普宁市星宏房地产开发有限公司", "项目名称": "星河明珠湾花园(四期)", @@ -1236,7 +1140,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011613" }, { - "序号": "104", + "序号": "96", "许可证号": "现售第【2023】028号", "开发企业": "普宁市星宏房地产开发有限公司", "项目名称": "星河明珠湾花园(四期)", @@ -1248,7 +1152,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011614" }, { - "序号": "105", + "序号": "97", "许可证号": "现售第【2023】027号", "开发企业": "普宁市星宏房地产开发有限公司", "项目名称": "星河明珠湾花园(四期)", @@ -1260,7 +1164,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011615" }, { - "序号": "106", + "序号": "98", "许可证号": "现售第【2023】026号", "开发企业": "普宁市星宏房地产开发有限公司", "项目名称": "星河明珠湾花园(四期)", @@ -1272,7 +1176,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011616" }, { - "序号": "107", + "序号": "99", "许可证号": "现售第【2023】025号", "开发企业": "普宁市星宏房地产开发有限公司", "项目名称": "星河明珠湾花园(四期)", @@ -1284,7 +1188,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011617" }, { - "序号": "108", + "序号": "100", "许可证号": "现售第【2023】024号", "开发企业": "普宁市华尔街投资发展有限公司", "项目名称": "盛迪嘉光明花园", @@ -1296,7 +1200,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011597" }, { - "序号": "109", + "序号": "101", "许可证号": "现售第【2023】023号", "开发企业": "普宁市华尔街投资发展有限公司", "项目名称": "盛迪嘉光明花园", @@ -1308,7 +1212,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011598" }, { - "序号": "110", + "序号": "102", "许可证号": "现售第【2023】022号", "开发企业": "普宁市华尔街投资发展有限公司", "项目名称": "盛迪嘉光明花园", @@ -1320,7 +1224,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011599" }, { - "序号": "111", + "序号": "103", "许可证号": "现售第【2023】021号", "开发企业": "普宁市华尔街投资发展有限公司", "项目名称": "盛迪嘉光明花园", @@ -1332,7 +1236,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011600" }, { - "序号": "112", + "序号": "104", "许可证号": "现售第【2023】020号", "开发企业": "普宁市华尔街投资发展有限公司", "项目名称": "盛迪嘉光明花园", @@ -1344,7 +1248,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011601" }, { - "序号": "113", + "序号": "105", "许可证号": "普建售许字[2023]第15号", "开发企业": "广东泰亨源实业有限公司", "项目名称": "凯旋花园", @@ -1356,31 +1260,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012105" }, { - "序号": "114", - "许可证号": "空", - "开发企业": "广东南方梅园生态村有限公司", - "项目名称": "南方梅园·山湖雅居", - "项目地址": "普宁市广汕公路(云落段)西北侧", - "批准时间": "2023-09-19", - "所在区域": "普宁市", - "总套数": 15, - "可售套数": 11, - "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011588" - }, - { - "序号": "115", - "许可证号": "空", - "开发企业": "普宁市南园瑞锦纺织印染有限公司", - "项目名称": "盛世华府", - "项目地址": "普宁市北环大道(环市北路)南侧", - "批准时间": "2023-09-19", - "所在区域": "普宁市", - "总套数": 315, - "可售套数": 296, - "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011590" - }, - { - "序号": "116", + "序号": "106", "许可证号": "现售第【2023】019号", "开发企业": "普宁市星宏房地产开发有限公司", "项目名称": "星河明珠湾花园(三期)", @@ -1392,7 +1272,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011583" }, { - "序号": "117", + "序号": "107", "许可证号": "现售第【2023】018号", "开发企业": "普宁市星宏房地产开发有限公司", "项目名称": "星河明珠湾花园(三期)", @@ -1404,7 +1284,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011584" }, { - "序号": "118", + "序号": "108", "许可证号": "现售第【2023】017号", "开发企业": "普宁市星宏房地产开发有限公司", "项目名称": "星河明珠湾花园(三期)", @@ -1416,7 +1296,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011585" }, { - "序号": "119", + "序号": "109", "许可证号": "现售第【2023】016号", "开发企业": "普宁市星宏房地产开发有限公司", "项目名称": "星河明珠湾花园(三期)", @@ -1428,7 +1308,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011586" }, { - "序号": "120", + "序号": "110", "许可证号": "现售第【2023】015号", "开发企业": "普宁市星宏房地产开发有限公司", "项目名称": "星河明珠湾花园(三期)", @@ -1440,7 +1320,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011582" }, { - "序号": "121", + "序号": "111", "许可证号": "现售第【2023】014号", "开发企业": "普宁市星宏房地产开发有限公司", "项目名称": "星河明珠湾花园(三期)", @@ -1452,7 +1332,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011581" }, { - "序号": "122", + "序号": "112", "许可证号": "现售第【2023】013号", "开发企业": "普宁市翔桦地产有限公司", "项目名称": "翔栩水岸花园(二期)", @@ -1464,7 +1344,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011564" }, { - "序号": "123", + "序号": "113", "许可证号": "现售第【2023】012号", "开发企业": "普宁市翔应地产有限公司", "项目名称": "翔栩嘉应华府", @@ -1476,7 +1356,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011567" }, { - "序号": "124", + "序号": "114", "许可证号": "现售第【2023】011号", "开发企业": "普宁市翔桦地产有限公司", "项目名称": "翔栩水岸花园", @@ -1488,7 +1368,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011563" }, { - "序号": "125", + "序号": "115", "许可证号": "现售第【2023】010号", "开发企业": "普宁市华荣实业投资有限公司", "项目名称": "保利和府", @@ -1500,7 +1380,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011549" }, { - "序号": "126", + "序号": "116", "许可证号": "现售第【2023】009号", "开发企业": "普宁市华荣实业投资有限公司", "项目名称": "保利和府", @@ -1512,7 +1392,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011550" }, { - "序号": "127", + "序号": "117", "许可证号": "现售第【2023】008号", "开发企业": "普宁市华荣实业投资有限公司", "项目名称": "保利和府", @@ -1524,7 +1404,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011551" }, { - "序号": "128", + "序号": "118", "许可证号": "现售第【2023】007号", "开发企业": "普宁市华荣实业投资有限公司", "项目名称": "保利和府", @@ -1536,7 +1416,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011548" }, { - "序号": "129", + "序号": "119", "许可证号": "现售第【2023】006号", "开发企业": "广东东和实业投资有限公司", "项目名称": "盛迪嘉光明印象花园", @@ -1548,7 +1428,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011517" }, { - "序号": "130", + "序号": "120", "许可证号": "现售第【2023】005号", "开发企业": "广东东和实业投资有限公司", "项目名称": "盛迪嘉光明印象花园", @@ -1560,7 +1440,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011516" }, { - "序号": "131", + "序号": "121", "许可证号": "现售第【2023】004号", "开发企业": "广东东和实业投资有限公司", "项目名称": "盛迪嘉光明印象花园", @@ -1572,19 +1452,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011544" }, { - "序号": "132", - "许可证号": "空", - "开发企业": "普宁市星宏房地产开发有限公司", - "项目名称": "星河明珠湾花园(三期)", - "项目地址": "普宁市广汕公路(云落段)西北侧", - "批准时间": "2023-09-11", - "所在区域": "普宁市", - "总套数": 2006, - "可售套数": 1631, - "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011524" - }, - { - "序号": "133", + "序号": "122", "许可证号": "现售第【2023】003号", "开发企业": "广东泰亨源实业有限公司", "项目名称": "凯旋花园", @@ -1596,7 +1464,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011492" }, { - "序号": "134", + "序号": "123", "许可证号": "现售第【2023】002号", "开发企业": "广东泰亨源实业有限公司", "项目名称": "凯旋花园", @@ -1608,7 +1476,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011498" }, { - "序号": "135", + "序号": "124", "许可证号": "现售第【2023】001号", "开发企业": "广东泰亨源实业有限公司", "项目名称": "凯旋花园", @@ -1620,31 +1488,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011494" }, { - "序号": "136", - "许可证号": "空", - "开发企业": "普宁华创文实业开发有限公司", - "项目名称": "唐商花园", - "项目地址": "普宁市北环大道(流沙东街道斗文村段)北侧", - "批准时间": "2023-09-07", - "所在区域": "普宁市", - "总套数": 1628, - "可售套数": 27, - "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011463" - }, - { - "序号": "137", - "许可证号": "空", - "开发企业": "普宁市华天房地产开发有限公司", - "项目名称": "华美春天园", - "项目地址": "普宁市南环大道北侧、大学路东侧", - "批准时间": "2023-09-07", - "所在区域": "普宁市", - "总套数": 853, - "可售套数": 154, - "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011423" - }, - { - "序号": "138", + "序号": "125", "许可证号": "普建售许字(2023)第11号", "开发企业": "普宁市方直恒泰房地产开发有限公司", "项目名称": "方直普宁悦府", @@ -1656,7 +1500,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012082" }, { - "序号": "139", + "序号": "126", "许可证号": "普建售许字[2022]第03号", "开发企业": "广东泰亨源实业有限公司", "项目名称": "凯旋花园", @@ -1668,7 +1512,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011994" }, { - "序号": "140", + "序号": "127", "许可证号": "普建售许字(2021)第22号", "开发企业": "普宁市方直恒泰房地产开发有限公司", "项目名称": "方直普宁悦府", @@ -1680,7 +1524,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012069" }, { - "序号": "141", + "序号": "128", "许可证号": "普建售许字(2021)第16号", "开发企业": "普宁市方直恒泰房地产开发有限公司", "项目名称": "方直普宁悦府", @@ -1692,7 +1536,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1012070" }, { - "序号": "142", + "序号": "129", "许可证号": "现售第【2020】054号", "开发企业": "普宁市鸿捷胜房地产开发有限公司", "项目名称": "新华城", @@ -1704,7 +1548,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011359" }, { - "序号": "143", + "序号": "130", "许可证号": "普房售许字【2020】第06号", "开发企业": "普宁市碧桂园置业有限公司", "项目名称": "普宁碧桂园", @@ -1716,7 +1560,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011365" }, { - "序号": "144", + "序号": "131", "许可证号": "现售第【2020】053号", "开发企业": "康美实业投资控股有限公司", "项目名称": "康美·福临门公馆", @@ -1728,7 +1572,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011328" }, { - "序号": "145", + "序号": "132", "许可证号": "现售第【2020】052号", "开发企业": "普宁市俊嘉房地产开发有限公司", "项目名称": "盛世华庭东区", @@ -1740,19 +1584,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011312" }, { - "序号": "146", - "许可证号": "空", - "开发企业": "揭阳市鸿森房地产开发有限公司", - "项目名称": "维美温泉度假村", - "项目地址": "揭阳市普侨区南部工业园西区", - "批准时间": "2020-08-27", - "所在区域": "普宁市", - "总套数": 455, - "可售套数": 222, - "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011310" - }, - { - "序号": "147", + "序号": "133", "许可证号": "现售第【2020】051号", "开发企业": "普宁市永茂实业投资有限公司", "项目名称": "滨湖华府", @@ -1764,7 +1596,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011296" }, { - "序号": "148", + "序号": "134", "许可证号": "现售第【2020】050号", "开发企业": "普宁市佳泰实业投资有限公司", "项目名称": "春熙园", @@ -1772,11 +1604,11 @@ "批准时间": "2020-08-20", "所在区域": "普宁市", "总套数": 398, - "可售套数": -6, + "可售套数": -9, "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011297" }, { - "序号": "149", + "序号": "135", "许可证号": "现售第【2020】049号", "开发企业": "广东万泰投资有限公司", "项目名称": "万泰金融大厦", @@ -1788,7 +1620,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011290" }, { - "序号": "150", + "序号": "136", "许可证号": "现售第【2020】048号", "开发企业": "普宁市恒森投资有限公司", "项目名称": "华美景轩", @@ -1800,7 +1632,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011266" }, { - "序号": "151", + "序号": "137", "许可证号": "现售第【2020】047号", "开发企业": "普宁市翔栩纺织有限公司", "项目名称": "翔栩·帝景花园", @@ -1812,7 +1644,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011236" }, { - "序号": "152", + "序号": "138", "许可证号": "现售第【2020】046号", "开发企业": "普宁市翔栩纺织有限公司", "项目名称": "翔栩·帝景花园", @@ -1824,7 +1656,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011240" }, { - "序号": "153", + "序号": "139", "许可证号": "现售第【2020】045号", "开发企业": "普宁市赵厝寮投资有限公司", "项目名称": "华桂苑", @@ -1836,7 +1668,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011222" }, { - "序号": "154", + "序号": "140", "许可证号": "现售第【2020】044号", "开发企业": "普宁市合兴物流有限公司", "项目名称": "普宁商贸广场", @@ -1848,7 +1680,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011224" }, { - "序号": "155", + "序号": "141", "许可证号": "现售第【2020】043号", "开发企业": "普宁市维美表业有限公司", "项目名称": "维美新城", @@ -1860,7 +1692,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011214" }, { - "序号": "156", + "序号": "142", "许可证号": "现售第【2020】042号", "开发企业": "普宁市恒润投资有限公司", "项目名称": "御景城三区", @@ -1872,7 +1704,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011197" }, { - "序号": "157", + "序号": "143", "许可证号": "现售第【2020】041号", "开发企业": "普宁市恒润投资有限公司", "项目名称": "御景城三区", @@ -1884,7 +1716,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011195" }, { - "序号": "158", + "序号": "144", "许可证号": "现售第【2020】040号", "开发企业": "普宁市恒润投资有限公司", "项目名称": "御景城", @@ -1896,7 +1728,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011152" }, { - "序号": "159", + "序号": "145", "许可证号": "现售第【2020】039号", "开发企业": "普宁市恒润投资有限公司", "项目名称": "御景城二区", @@ -1908,7 +1740,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011150" }, { - "序号": "160", + "序号": "146", "许可证号": "现售第【2020】038号", "开发企业": "普宁市恒润投资有限公司", "项目名称": "御景城", @@ -1920,7 +1752,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011148" }, { - "序号": "161", + "序号": "147", "许可证号": "现售第【2020】037号", "开发企业": "普宁市凯特曼投资有限公司", "项目名称": "凯逸阳光", @@ -1932,7 +1764,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011042" }, { - "序号": "162", + "序号": "148", "许可证号": "现售第【2020】036号", "开发企业": "普宁市俊嘉房地产开发有限公司", "项目名称": "盛世华轩", @@ -1944,7 +1776,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011161" }, { - "序号": "163", + "序号": "149", "许可证号": "现售第【2020】035号", "开发企业": "普宁市金莎投资有限公司", "项目名称": "时代中心", @@ -1956,7 +1788,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011015" }, { - "序号": "164", + "序号": "150", "许可证号": "现售第【2020】034号", "开发企业": "广东南方梅园生态村有限公司", "项目名称": "南方梅园·山湖雅居", @@ -1968,7 +1800,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011167" }, { - "序号": "165", + "序号": "151", "许可证号": "现售第【2020】033号", "开发企业": "广东南方梅园生态村有限公司", "项目名称": "南方梅园·山湖雅居", @@ -1980,7 +1812,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011166" }, { - "序号": "166", + "序号": "152", "许可证号": "现售第【2020】032号", "开发企业": "普宁市金盘科技有限公司", "项目名称": "金桂园", @@ -1992,7 +1824,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011158" }, { - "序号": "167", + "序号": "153", "许可证号": "现售第【2020】031号", "开发企业": "普宁市万泰购物广场有限公司", "项目名称": "万泰汇购物中心", @@ -2004,7 +1836,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011159" }, { - "序号": "168", + "序号": "154", "许可证号": "现售第【2020】030号", "开发企业": "广东南方梅园生态村有限公司", "项目名称": "南方梅园·山湖雅居", @@ -2016,7 +1848,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011132" }, { - "序号": "169", + "序号": "155", "许可证号": "现售第【2020】029号", "开发企业": "广东南方梅园生态村有限公司", "项目名称": "南方梅园·山湖雅居", @@ -2028,7 +1860,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011129" }, { - "序号": "170", + "序号": "156", "许可证号": "现售第【2020】028号", "开发企业": "广东南方梅园生态村有限公司", "项目名称": "南方梅园·山湖雅居", @@ -2040,7 +1872,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011127" }, { - "序号": "171", + "序号": "157", "许可证号": "现售第【2020】027号", "开发企业": "广东南方梅园生态村有限公司", "项目名称": "南方梅园·山湖雅居", @@ -2052,7 +1884,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011126" }, { - "序号": "172", + "序号": "158", "许可证号": "现售第【2020】026号", "开发企业": "广东南方梅园生态村有限公司", "项目名称": "南方梅园·山湖雅居", @@ -2064,7 +1896,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011160" }, { - "序号": "173", + "序号": "159", "许可证号": "现售第【2020】025号", "开发企业": "广东南方梅园生态村有限公司", "项目名称": "南方梅园·山湖雅居", @@ -2076,7 +1908,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011128" }, { - "序号": "174", + "序号": "160", "许可证号": "现售第【2020】024号", "开发企业": "广东南方梅园生态村有限公司", "项目名称": "南方梅园·山湖雅居", @@ -2088,7 +1920,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011130" }, { - "序号": "175", + "序号": "161", "许可证号": "现售第【2020】023号", "开发企业": "广东南方梅园生态村有限公司", "项目名称": "南方梅园·山湖雅居", @@ -2100,7 +1932,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011131" }, { - "序号": "176", + "序号": "162", "许可证号": "现售第【2020】022号", "开发企业": "广东南方梅园生态村有限公司", "项目名称": "南方梅园·山湖雅居", @@ -2112,7 +1944,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011133" }, { - "序号": "177", + "序号": "163", "许可证号": "现售第【2020】021号", "开发企业": "广东南方梅园生态村有限公司", "项目名称": "南方梅园·山湖雅居", @@ -2124,7 +1956,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011134" }, { - "序号": "178", + "序号": "164", "许可证号": "现售第【2020】020号", "开发企业": "普宁市盛迪嘉置业投资有限公司", "项目名称": "盛迪嘉花园", @@ -2136,7 +1968,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011073" }, { - "序号": "179", + "序号": "165", "许可证号": "现售第【2020】019号", "开发企业": "普宁市金莎投资有限公司", "项目名称": "时代中心", @@ -2148,7 +1980,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011034" }, { - "序号": "180", + "序号": "166", "许可证号": "现售第【2020】018号", "开发企业": "普宁市金莎投资有限公司", "项目名称": "时代中心", @@ -2160,7 +1992,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011014" }, { - "序号": "181", + "序号": "167", "许可证号": "现售第【2020】017号", "开发企业": "普宁市金莎投资有限公司", "项目名称": "时代中心", @@ -2172,7 +2004,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011013" }, { - "序号": "182", + "序号": "168", "许可证号": "现售第【2020】016号", "开发企业": "普宁市宏御房地产开发有限公司", "项目名称": "宏御雅轩", @@ -2184,7 +2016,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011215" }, { - "序号": "183", + "序号": "169", "许可证号": "现售第【2020】015号", "开发企业": "普宁市盘龙湾温泉度假村有限公司", "项目名称": "盘龙湾花园", @@ -2196,7 +2028,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011100" }, { - "序号": "184", + "序号": "170", "许可证号": "现售第【2020】014号", "开发企业": "康美中药城(普宁)有限公司", "项目名称": "普宁中药材专业市场", @@ -2208,7 +2040,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011099" }, { - "序号": "185", + "序号": "171", "许可证号": "现售第【2020】013号", "开发企业": "康美中药城(普宁)有限公司", "项目名称": "普宁中药材专业市场", @@ -2220,7 +2052,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011089" }, { - "序号": "186", + "序号": "172", "许可证号": "现售第【2020】012号", "开发企业": "普宁市合润投资有限公司", "项目名称": "南欣邸", @@ -2232,7 +2064,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011087" }, { - "序号": "187", + "序号": "173", "许可证号": "现售第【2020】011号", "开发企业": "广东嘉懋投资置业有限公司", "项目名称": "尚东一品(南区)", @@ -2244,7 +2076,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011210" }, { - "序号": "188", + "序号": "174", "许可证号": "现售第【2020】010号", "开发企业": "广东嘉懋投资置业有限公司", "项目名称": "尚东一品(北区)", @@ -2256,7 +2088,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011211" }, { - "序号": "189", + "序号": "175", "许可证号": "现售第【2020】009号", "开发企业": "广东嘉懋投资置业有限公司", "项目名称": "尚东一品(北区)", @@ -2268,7 +2100,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011212" }, { - "序号": "190", + "序号": "176", "许可证号": "现售第【2020】008号", "开发企业": "广东嘉懋投资置业有限公司", "项目名称": "尚东步行街", @@ -2280,7 +2112,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011209" }, { - "序号": "191", + "序号": "177", "许可证号": "现售第【2020】007号", "开发企业": "普宁市汇润地产有限公司", "项目名称": "汇润·幸福里", @@ -2292,7 +2124,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011110" }, { - "序号": "192", + "序号": "178", "许可证号": "现售第【2020】006号", "开发企业": "普宁市汇润地产有限公司", "项目名称": "汇润·吉祥里", @@ -2304,7 +2136,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011113" }, { - "序号": "193", + "序号": "179", "许可证号": "现售第【2020】005号", "开发企业": "普宁市汇润地产有限公司", "项目名称": "汇润·幸福里", @@ -2316,7 +2148,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011118" }, { - "序号": "194", + "序号": "180", "许可证号": "现售第【2020】004号", "开发企业": "普宁市翔栩房地产开发有限公司", "项目名称": "翔栩万泰城", @@ -2328,7 +2160,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011088" }, { - "序号": "195", + "序号": "181", "许可证号": "现售第【2020】003号", "开发企业": "普宁市盈泰投资有限公司", "项目名称": "盈泰华府", @@ -2340,7 +2172,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011026" }, { - "序号": "196", + "序号": "182", "许可证号": "现售第【2020】002号", "开发企业": "普宁市骏景房地产开发有限公司", "项目名称": "丽江骏景花园", @@ -2352,7 +2184,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011037" }, { - "序号": "197", + "序号": "183", "许可证号": "现售第【2020】001号", "开发企业": "广东南方梅园生态村有限公司", "项目名称": "山湖名庭", @@ -2364,7 +2196,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011023" }, { - "序号": "198", + "序号": "184", "许可证号": "普房售许字【2019】第16号", "开发企业": "普宁市碧桂园置业有限公司", "项目名称": "普宁碧桂园", @@ -2376,7 +2208,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011045" }, { - "序号": "199", + "序号": "185", "许可证号": "普房售许字【2019】第17号", "开发企业": "普宁市盘龙湾温泉度假村有限公司", "项目名称": "盘龙湾花园", @@ -2388,7 +2220,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011377" }, { - "序号": "200", + "序号": "186", "许可证号": "普房售许字【2019】第15号", "开发企业": "普宁市碧桂园置业有限公司", "项目名称": "普宁碧桂园", @@ -2400,7 +2232,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011124" }, { - "序号": "201", + "序号": "187", "许可证号": "普房售许字【2019】第14号", "开发企业": "普宁市碧桂园置业有限公司", "项目名称": "普宁碧桂园", @@ -2412,7 +2244,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011061" }, { - "序号": "202", + "序号": "188", "许可证号": "普房售许字【2019】第06号", "开发企业": "普宁市碧桂园置业有限公司", "项目名称": "普宁碧桂园", @@ -2424,7 +2256,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011062" }, { - "序号": "203", + "序号": "189", "许可证号": "2019005", "开发企业": "康美中药城(普宁)有限公司", "项目名称": "普宁中药材专业市场", @@ -2436,7 +2268,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=329" }, { - "序号": "204", + "序号": "190", "许可证号": "普2019-01,02", "开发企业": "普宁市碧桂园置业有限公司", "项目名称": "普宁碧桂园", @@ -2448,7 +2280,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=-317" }, { - "序号": "205", + "序号": "191", "许可证号": "普建售许(2019)第03", "开发企业": "广东超亿美投资有限公司", "项目名称": "华美创意园", @@ -2460,7 +2292,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011121" }, { - "序号": "206", + "序号": "192", "许可证号": "普建售许字【2018】第014号", "开发企业": "普宁市翔栩房地产开发有限公司", "项目名称": "翔栩*商业街(商铺)", @@ -2472,7 +2304,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011871" }, { - "序号": "207", + "序号": "193", "许可证号": "普建售许字[2018]第10号", "开发企业": "广东泰亨源实业有限公司", "项目名称": "凯旋花园", @@ -2484,7 +2316,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011620" }, { - "序号": "208", + "序号": "194", "许可证号": "普建售许字(2018)第003号", "开发企业": "普宁市华隆兴房地产开发有限公司", "项目名称": "桂荣名轩", @@ -2496,7 +2328,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011226" }, { - "序号": "209", + "序号": "195", "许可证号": "编号(2015)字第006", "开发企业": "普宁市金莎投资有限公司", "项目名称": "时代中心", @@ -2508,7 +2340,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011033" }, { - "序号": "210", + "序号": "196", "许可证号": "普2015年-010", "开发企业": "广东嘉懋投资置业有限公司", "项目名称": "尚东明珠", @@ -2520,7 +2352,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011213" }, { - "序号": "211", + "序号": "197", "许可证号": "2016-007", "开发企业": "普宁市盘龙湾温泉度假村有限公司", "项目名称": "盘龙湾花园", @@ -2532,7 +2364,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=-184" }, { - "序号": "212", + "序号": "198", "许可证号": "普2015-014", "开发企业": "广东天豪投资有限公司", "项目名称": "翠轩花园", @@ -2544,7 +2376,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=-162" }, { - "序号": "213", + "序号": "199", "许可证号": "普2015--005", "开发企业": "康美中药城(普宁)有限公司", "项目名称": "平安里花园", @@ -2556,7 +2388,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=-159" }, { - "序号": "214", + "序号": "200", "许可证号": "普现房2015-004", "开发企业": "普宁市万泰购物广场有限公司", "项目名称": "万泰汇购物中心", @@ -2568,7 +2400,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011163" }, { - "序号": "215", + "序号": "201", "许可证号": "普2015-005", "开发企业": "康美中药城(普宁)有限公司", "项目名称": "平安里花园", @@ -2580,7 +2412,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=-146" }, { - "序号": "216", + "序号": "202", "许可证号": "普2015-011", "开发企业": "普宁市维美表业有限公司", "项目名称": "维美新城", @@ -2592,7 +2424,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=186" }, { - "序号": "217", + "序号": "203", "许可证号": "【2015】009", "开发企业": "普宁市友兴实业有限公司", "项目名称": "万泰汇大厦", @@ -2604,7 +2436,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011181" }, { - "序号": "218", + "序号": "204", "许可证号": "普2014--007", "开发企业": "普宁市创展电脑科技有限公司", "项目名称": "创展华府", @@ -2616,7 +2448,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=-129" }, { - "序号": "219", + "序号": "205", "许可证号": "普2014-003", "开发企业": "广东天豪投资有限公司", "项目名称": "紫晖花园", @@ -2628,7 +2460,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=-101" }, { - "序号": "220", + "序号": "206", "许可证号": "普现房2013-002", "开发企业": "普宁市万泰购物广场有限公司", "项目名称": "万泰汇购物中心", @@ -2640,7 +2472,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011164" }, { - "序号": "221", + "序号": "207", "许可证号": "普现房2013-001", "开发企业": "普宁市万泰购物广场有限公司", "项目名称": "万泰汇购物中心", @@ -2652,7 +2484,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=1011165" }, { - "序号": "222", + "序号": "208", "许可证号": "普2013--001之二", "开发企业": "普宁市翔栩房地产开发有限公司", "项目名称": "翔栩万泰城", @@ -2664,7 +2496,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=-106" }, { - "序号": "223", + "序号": "209", "许可证号": "普2013--001之一", "开发企业": "普宁市翔栩房地产开发有限公司", "项目名称": "翔栩万泰城", @@ -2676,7 +2508,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=-97" }, { - "序号": "224", + "序号": "210", "许可证号": "普2012--007", "开发企业": "普宁市松桂房地产开发有限公司", "项目名称": "松竹园", @@ -2688,7 +2520,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=-98" }, { - "序号": "225", + "序号": "211", "许可证号": "普2012--004", "开发企业": "普宁市桂荣碧水湾房地产开发有限公司", "项目名称": "桂荣碧水湾", @@ -2700,7 +2532,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=-31" }, { - "序号": "226", + "序号": "212", "许可证号": "普2012-002", "开发企业": "普宁市松桂房地产开发有限公司", "项目名称": "松竹园", @@ -2712,7 +2544,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=-30" }, { - "序号": "227", + "序号": "213", "许可证号": "普2012-001", "开发企业": "普宁市捷佳房地产开发有限公司", "项目名称": "吉华园", @@ -2724,7 +2556,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=-27" }, { - "序号": "228", + "序号": "214", "许可证号": "普2011-006", "开发企业": "广东好盈投资有限公司", "项目名称": "万盛花园", @@ -2736,7 +2568,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=-25" }, { - "序号": "229", + "序号": "215", "许可证号": "普2011-004", "开发企业": "普宁市华隆兴房地产开发有限公司", "项目名称": "桂荣·君林天下", @@ -2748,7 +2580,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=-19" }, { - "序号": "230", + "序号": "216", "许可证号": "普2011-003", "开发企业": "普宁市桂荣碧水湾房地产开发有限公司", "项目名称": "桂荣碧水湾", @@ -2760,7 +2592,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=-15" }, { - "序号": "231", + "序号": "217", "许可证号": "普府国用(2003)第特000765号", "开发企业": "普宁市创宇房地产开发有限公司", "项目名称": "玉湖雅苑", @@ -2772,7 +2604,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=-14" }, { - "序号": "232", + "序号": "218", "许可证号": "普2011-001", "开发企业": "普宁市汇润地产有限公司", "项目名称": "汇润·雅苑", @@ -2784,7 +2616,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=-12" }, { - "序号": "233", + "序号": "219", "许可证号": "2010-003", "开发企业": "普宁市流沙广厦房地产开发有限公司南园经营部", "项目名称": "盛世华庭西区", @@ -2796,7 +2628,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=-5" }, { - "序号": "234", + "序号": "220", "许可证号": "2010-002", "开发企业": "普宁市华隆兴房地产开发有限公司", "项目名称": "桂荣·君林天下", @@ -2808,7 +2640,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=4" }, { - "序号": "235", + "序号": "221", "许可证号": "2010-001", "开发企业": "普宁市中信房地产开发有限公司", "项目名称": "中信华府", @@ -2820,7 +2652,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=7" }, { - "序号": "236", + "序号": "222", "许可证号": "2009字第003之二号", "开发企业": "普宁市中信房地产开发有限公司", "项目名称": "中信华府", @@ -2832,7 +2664,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=9" }, { - "序号": "237", + "序号": "223", "许可证号": "2009字第003之一号", "开发企业": "普宁市中信房地产开发有限公司", "项目名称": "中信华府", @@ -2844,7 +2676,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=8" }, { - "序号": "238", + "序号": "224", "许可证号": "2009-001", "开发企业": "普宁市桂荣碧水湾房地产开发有限公司", "项目名称": "桂荣碧水湾", @@ -2856,7 +2688,7 @@ "许可证链接": "http://120.236.48.169:89/HPMS/PresellDetailsInfo.aspx?id=3" }, { - "序号": "239", + "序号": "225", "许可证号": "2008-002", "开发企业": "普宁市福盛房地产开发有限公司", "项目名称": "福盛花园", diff --git a/PreSaleLicense/data.xlsx b/PreSaleLicense/data.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..8fb8ea64c53b24c735bd66f9e1b5d60445a59fde GIT binary patch literal 41666 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 K@*J~&e)~U&7Sm$@ literal 0 HcmV?d00001 diff --git a/PreSaleLicense/index.js b/PreSaleLicense/index.js new file mode 100644 index 0000000..2afe4e1 --- /dev/null +++ b/PreSaleLicense/index.js @@ -0,0 +1,251 @@ +import axios from 'axios'; +import * as cheerio from 'cheerio'; +import fs from 'fs/promises'; +import ExcelJS from 'exceljs'; // Import ExcelJS for XLSX generation + +const BASE_URL = 'http://120.236.48.169:89/HPMS/'; +const START_URL = BASE_URL + 'presellCertList.aspx'; + +// Extracts table data from a given HTML content +function extractDataFromHtml($) { + const data = []; + // Corrected selector to find rows with table data, skipping the header + const rows = $('.resultlist table tr:has(td)'); + + rows.each((i, row) => { + const columns = $(row).find('td'); + // Based on debug.html, the structure is different and has 9 columns + if (columns.length >= 9) { + const licenseCell = $(columns[1]); // 许可证号 is the 2nd column + const licenseLinkTag = licenseCell.find('a'); + + const rowData = { + '序号': $(columns[0]).text().trim(), + '许可证号': licenseLinkTag.text().trim(), + '开发企业': $(columns[2]).text().trim(), + '项目名称': $(columns[3]).text().trim(), + '项目地址': $(columns[4]).text().trim(), + '批准时间': $(columns[5]).text().trim(), + '所在区域': $(columns[6]).text().trim(), + '总套数': $(columns[7]).text().trim(), + '可售套数': $(columns[8]).text().trim(), + '许可证链接': '', // Initialize + }; + + // The link is inside an onclick attribute, not a standard href + const onclickAttr = licenseLinkTag.attr('onclick'); + if (onclickAttr) { + // Make regex flexible to handle single or double quotes + const match = onclickAttr.match(/open_click\(['"]([^'"]+)['"]\)/); + if (match && match[1]) { + // match[1] will be like '/HPMS/PresellDetailsInfo.aspx?id=1012110' + // We need to resolve it against the origin, not the full BASE_URL path + const origin = new URL(BASE_URL).origin; + rowData['许可证链接'] = new URL(match[1], origin).href; + } + } + data.push(rowData); + } + }); + return data; +} + +/** + * Scrapes all data from the target website, handling pagination. + * @returns {Promise>} - An array of all scraped data records. + */ +async function scrapeWebsite() { + let allData = []; + console.log('开始抓取第一页数据...'); + let response = await axios.get(START_URL, { + headers: { + 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36' + } + }); + + let $ = cheerio.load(response.data); + allData = extractDataFromHtml($); + console.log(`第一页抓取完成,获得 ${allData.length} 条数据。`); + + const pageCountSpan = $('#PageNavigator1_LblPageCount'); + const totalPages = pageCountSpan.length ? parseInt(pageCountSpan.text(), 10) : 1; + console.log(`共发现 ${totalPages} 页。`); + + const formValues = {}; + $('input[name^="txt"], select').each((idx, el) => { + const name = $(el).attr('name'); + if (name) { + formValues[name] = $(el).val() || ''; + } + }); + + for (let i = 2; i <= totalPages; i++) { + console.log(`正在抓取第 ${i} 页...`); + + const viewState = $('#__VIEWSTATE').val(); + const viewStateGenerator = $('#__VIEWSTATEGENERATOR').val(); + const eventValidation = $('#__EVENTVALIDATION').val(); + + if (!viewState) { + console.log('无法找到 __VIEWSTATE,终止抓取。'); + break; + } + + const postData = new URLSearchParams(); + postData.append('__EVENTTARGET', 'PageNavigator1$LnkBtnNext'); + postData.append('__EVENTARGUMENT', ''); + postData.append('__VIEWSTATE', viewState); + postData.append('__VIEWSTATEGENERATOR', viewStateGenerator); + if(eventValidation) { + postData.append('__EVENTVALIDATION', eventValidation); + } + + for (const name in formValues) { + postData.append(name, formValues[name]); + } + postData.append('PageNavigator1$txtNewPageIndex', (i - 1).toString()); + + response = await axios.post(START_URL, postData, { + headers: { + 'Content-Type': 'application/x-www-form-urlencoded', + 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36', + 'Referer': START_URL, + } + }); + + $ = cheerio.load(response.data); + const nextPageData = extractDataFromHtml($); + console.log(`第 ${i} 页抓取完成,获得 ${nextPageData.length} 条数据。`); + + if (nextPageData.length === 0) { + console.log(`第 ${i} 页没有数据,抓取结束。`); + break; + } + allData = allData.concat(nextPageData); + } + console.log(`\n抓取全站数据完毕!共 ${allData.length} 条原始记录。`); + return allData; +} + + +/** + * Performs post-processing on the scraped data: + * 1. Filters out records where "许可证号" is "空". + * 2. Re-indexes "序号" sequentially. + * 3. Converts "总套数" and "可售套数" fields to numbers. + * @param {Array} allData - The raw scraped data. + * @returns {Promise>} - The processed data. + */ +async function processScrapedData(allData) { + // 1. Filter out records where "许可证号" is "空" + let processedData = allData.filter(record => record['许可证号'] !== '空'); + console.log(`删除 "许可证号" 为 "空" 的记录后,剩余 ${processedData.length} 条记录。`); + + // 2. Re-index "序号" sequentially + for (let i = 0; i < processedData.length; i++) { + processedData[i]['序号'] = (i + 1).toString(); + } + console.log('序号字段已重新编号。'); + + // 3. Convert "总套数" and "可售套数" to numbers + for (const record of processedData) { + record['总套数'] = parseInt(record['总套数'], 10) || 0; + record['可售套数'] = parseInt(record['可售套数'], 10) || 0; + } + console.log('"总套数" 和 "可售套数" 字段已转换为数字。'); + + return processedData; +} + +/** + * Generates a CSV file from the given data. + * @param {Array} data - The data to convert to CSV. + * @param {string} filePath - The path to save the CSV file. + */ +async function generateCsv(data, filePath) { + if (data.length === 0) { + console.log(`没有数据可生成 CSV 文件 (${filePath})。`); + return; + } + const headers = Object.keys(data[0]); + const csvRows = []; + csvRows.push(headers.map(header => `"${header}"`).join(',')); + for (const record of data) { + const values = headers.map(header => { + const value = record[header]; + // Ensure values are properly quoted and internal quotes are escaped + return `"${String(value).replace(new RegExp('"', 'g'), '""')}"`; + }); + csvRows.push(values.join(',')); + } + const csvContent = csvRows.join('\n'); + const BOM = '\uFEFF'; // UTF-8 BOM + await fs.writeFile(filePath, BOM + csvContent, 'utf-8'); + console.log(`已生成 ${filePath} 文件。`); +} + +/** + * Generates an XLSX file from the given data. + * @param {Array} data - The data to convert to XLSX. + * @param {string} filePath - The path to save the XLSX file. + */ +async function generateXlsx(data, filePath) { + if (data.length === 0) { + console.log(`没有数据可生成 XLSX 文件 (${filePath})。`); + return; + } + const workbook = new ExcelJS.Workbook(); + const worksheet = workbook.addWorksheet('Data'); + + const headers = Object.keys(data[0]); + worksheet.columns = headers.map(key => ({ + header: key, + key: key, + width: key.includes('地址') || key.includes('链接') ? 40 : 20 + })); + worksheet.addRows(data); + + worksheet.getRow(1).eachCell(cell => { + cell.font = { bold: true }; + cell.fill = { + type: 'pattern', + pattern:'solid', + fgColor:{argb:'FFDDDDDD'} + }; + cell.alignment = { vertical: 'middle', horizontal: 'center' }; + }); + worksheet.autoFilter = { + from: 'A1', + to: { + row: 1, + column: headers.length + } + }; + await workbook.xlsx.writeFile(filePath); + console.log(`已生成 ${filePath} 文件。`); +} + + +async function main() { + try { + const allData = await scrapeWebsite(); + + const processedData = await processScrapedData(allData); + + await fs.writeFile('data.json', JSON.stringify(processedData, null, 4), 'utf-8'); + console.log(`更新后的数据已保存至 data.json 文件。`); + + await generateCsv(processedData, './data.csv'); + await generateXlsx(processedData, './data.xlsx'); + + console.log('\n所有数据处理和文件生成任务已完成。'); + + } catch (error) { + console.error('抓取或处理过程中发生错误:', error.message); + if (error.response) { + console.error('Status:', error.response.status); + } + } +} + +main(); diff --git a/convert-units-to-numbers.js b/convert-units-to-numbers.js deleted file mode 100644 index 0b8c13e..0000000 --- a/convert-units-to-numbers.js +++ /dev/null @@ -1,24 +0,0 @@ - -import fs from 'fs/promises'; - -async function convertUnitsToNumbers() { - try { - const filePath = './data.json'; - const data = await fs.readFile(filePath, 'utf-8'); - let records = JSON.parse(data); - - // Iterate through each record and convert the specified fields to numbers - for (const record of records) { - // Use parseInt and provide a fallback of 0 if parsing fails (e.g., for empty strings) - record['总套数'] = parseInt(record['总套数'], 10) || 0; - record['可售套数'] = parseInt(record['可售套数'], 10) || 0; - } - - await fs.writeFile(filePath, JSON.stringify(records, null, 4), 'utf-8'); - console.log('已将 data.json 中的 "总套数" 和 "可售套数" 字段的值转换为数字。'); - } catch (error) { - console.error('转换字段为数字时发生错误:', error.message); - } -} - -convertUnitsToNumbers(); diff --git a/data.xlsx b/data.xlsx deleted file mode 100644 index dadbb0c7934b843cacdef87cca189b7e47652c61..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 23822 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 Cy#N>h diff --git a/json-to-csv.js b/json-to-csv.js deleted file mode 100644 index 1307716..0000000 --- a/json-to-csv.js +++ /dev/null @@ -1,41 +0,0 @@ -import fs from 'fs/promises'; - -async function jsonToCsv() { - try { - const jsonFilePath = './data.json'; - const csvFilePath = './data.csv'; - - const data = await fs.readFile(jsonFilePath, 'utf-8'); - const records = JSON.parse(data); - - if (records.length === 0) { - console.log('data.json 文件为空,没有数据可转换为 CSV。'); - return; - } - - // Extract headers from the first record - const headers = Object.keys(records[0]); - const csvRows = []; - - // Add headers as the first row in CSV - csvRows.push(headers.map(header => `"${header}"`).join(',')); - - // Convert each record to a CSV row - for (const record of records) { - const values = headers.map(header => { - const value = record[header]; - // Handle potential commas or double quotes within the data by enclosing in double quotes - // and escaping existing double quotes. - return `"${String(value).replace(new RegExp('"', 'g'), '""')}"`; - }); - csvRows.push(values.join(',')); - } - - await fs.writeFile(csvFilePath, csvRows.join('\n'), 'utf-8'); - console.log(`成功将 data.json 转换为 ${csvFilePath}`); - } catch (error) { - console.error('转换 JSON 到 CSV 时发生错误:', error.message); - } -} - -jsonToCsv(); diff --git a/json-to-xlsx.js b/json-to-xlsx.js deleted file mode 100644 index 5afa8e9..0000000 --- a/json-to-xlsx.js +++ /dev/null @@ -1,64 +0,0 @@ - -import fs from 'fs/promises'; -import ExcelJS from 'exceljs'; - -async function jsonToXlsx() { - try { - const jsonFilePath = './data.json'; - const xlsxFilePath = './data.xlsx'; - - // Read and parse the JSON file - const jsonData = await fs.readFile(jsonFilePath, 'utf-8'); - const records = JSON.parse(jsonData); - - if (records.length === 0) { - console.log('data.json 文件为空,没有数据可转换为 XLSX。'); - return; - } - - // Create a new workbook and a worksheet - const workbook = new ExcelJS.Workbook(); - const worksheet = workbook.addWorksheet('Data'); - - // Define columns based on the keys of the first record - const headers = Object.keys(records[0]); - worksheet.columns = headers.map(key => ({ - header: key, - key: key, - width: key.includes('地址') || key.includes('链接') ? 40 : 20 // Make address and link columns wider - })); - - // Add the records as rows - worksheet.addRows(records); - - // Style the header - worksheet.getRow(1).eachCell(cell => { - cell.font = { bold: true }; - cell.fill = { - type: 'pattern', - pattern:'solid', - fgColor:{argb:'FFDDDDDD'} - }; - cell.alignment = { vertical: 'middle', horizontal: 'center' }; - }); - - // Auto-filter on the header row - worksheet.autoFilter = { - from: 'A1', - to: { - row: 1, - column: headers.length - } - }; - - // Write to file - await workbook.xlsx.writeFile(xlsxFilePath); - console.log(`成功将 ${jsonFilePath} 转换为 ${xlsxFilePath}`); - console.log('XLSX 文件已创建,您现在可以在其中进行筛选和排序。'); - - } catch (error) { - console.error('转换 JSON 到 XLSX 时发生错误:', error.message); - } -} - -jsonToXlsx(); diff --git a/package.json b/package.json index 027fb28..511b2a2 100644 --- a/package.json +++ b/package.json @@ -12,7 +12,8 @@ "packageManager": "pnpm@10.28.0", "dependencies": { "axios": "^1.13.2", - "cheerio": "^1.1.2" + "cheerio": "^1.1.2", + "exceljs": "^4.4.0" }, "type": "module" } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 4e4285f..8bf0774 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -14,22 +14,91 @@ importers: cheerio: specifier: ^1.1.2 version: 1.1.2 + exceljs: + specifier: ^4.4.0 + version: 4.4.0 packages: + '@fast-csv/format@4.3.5': + resolution: {integrity: sha512-8iRn6QF3I8Ak78lNAa+Gdl5MJJBM5vRHivFtMRUWINdevNo00K7OXxS2PshawLKTejVwieIlPmK5YlLu6w4u8A==} + + '@fast-csv/parse@4.3.6': + resolution: {integrity: sha512-uRsLYksqpbDmWaSmzvJcuApSEe38+6NQZBUsuAyMZKqHxH0g1wcJgsKUvN3WC8tewaqFjBMMGrkHmC+T7k8LvA==} + + '@types/node@14.18.63': + resolution: {integrity: sha512-fAtCfv4jJg+ExtXhvCkCqUKZ+4ok/JQk01qDKhL5BDDoS3AxKXhV5/MAVUZyQnSEd2GT92fkgZl0pz0Q0AzcIQ==} + + archiver-utils@2.1.0: + resolution: {integrity: sha512-bEL/yUb/fNNiNTuUz979Z0Yg5L+LzLxGJz8x79lYmR54fmTIb6ob/hNQgkQnIUDWIFjZVQwl9Xs356I6BAMHfw==} + engines: {node: '>= 6'} + + archiver-utils@3.0.4: + resolution: {integrity: sha512-KVgf4XQVrTjhyWmx6cte4RxonPLR9onExufI1jhvw/MQ4BB6IsZD5gT8Lq+u/+pRkWna/6JoHpiQioaqFP5Rzw==} + engines: {node: '>= 10'} + + archiver@5.3.2: + resolution: {integrity: sha512-+25nxyyznAXF7Nef3y0EbBeqmGZgeN/BxHX29Rs39djAfaFalmQ89SE6CWyDCHzGL0yt/ycBtNOmGTW0FyGWNw==} + engines: {node: '>= 10'} + + async@3.2.6: + resolution: {integrity: sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==} + asynckit@0.4.0: resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} axios@1.13.2: resolution: {integrity: sha512-VPk9ebNqPcy5lRGuSlKx752IlDatOjT9paPlm8A7yOuW2Fbvp4X3JznJtT4f0GzGLLiWE9W8onz51SqLYwzGaA==} + balanced-match@1.0.2: + resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} + + base64-js@1.5.1: + resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==} + + big-integer@1.6.52: + resolution: {integrity: sha512-QxD8cf2eVqJOOz63z6JIN9BzvVs/dlySa5HGSBH5xtR8dPteIRQnBxxKqkNTiT6jbDTF6jAfrd4oMcND9RGbQg==} + engines: {node: '>=0.6'} + + binary@0.3.0: + resolution: {integrity: sha512-D4H1y5KYwpJgK8wk1Cue5LLPgmwHKYSChkbspQg5JtVuR5ulGckxfR62H3AE9UDkdMC8yyXlqYihuz3Aqg2XZg==} + + bl@4.1.0: + resolution: {integrity: sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==} + + bluebird@3.4.7: + resolution: {integrity: sha512-iD3898SR7sWVRHbiQv+sHUtHnMvC1o3nW5rAcqnq3uOn07DSAppZYUkIGslDz6gXC7HfunPe7YVBgoEJASPcHA==} + boolbase@1.0.0: resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==} + brace-expansion@1.1.12: + resolution: {integrity: sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==} + + brace-expansion@2.0.2: + resolution: {integrity: sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==} + + buffer-crc32@0.2.13: + resolution: {integrity: sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==} + + buffer-indexof-polyfill@1.0.2: + resolution: {integrity: sha512-I7wzHwA3t1/lwXQh+A5PbNvJxgfo5r3xulgpYDB5zckTu/Z9oUK9biouBKQUjEqzaz3HnAT6TYoovmE+GqSf7A==} + engines: {node: '>=0.10'} + + buffer@5.7.1: + resolution: {integrity: sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==} + + buffers@0.1.1: + resolution: {integrity: sha512-9q/rDEGSb/Qsvv2qvzIzdluL5k7AaJOTrw23z9reQthrbF7is4CtlT0DXyO1oei2DCp4uojjzQ7igaSHp1kAEQ==} + engines: {node: '>=0.2.0'} + call-bind-apply-helpers@1.0.2: resolution: {integrity: sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==} engines: {node: '>= 0.4'} + chainsaw@0.1.0: + resolution: {integrity: sha512-75kWfWt6MEKNC8xYXIdRpDehRYY/tNSgwKaJq+dbbDcxORuVrrQ+SEHoWsniVn9XPYfP4gmdWIeDk/4YNp1rNQ==} + cheerio-select@2.1.0: resolution: {integrity: sha512-9v9kG0LvzrlcungtnJtpGNxY+fzECQKhK4EGJX2vByejiMX84MFNQw4UxPJl3bFbTMw+Dfs37XaIkCwTZfLh4g==} @@ -41,6 +110,25 @@ packages: resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} engines: {node: '>= 0.8'} + compress-commons@4.1.2: + resolution: {integrity: sha512-D3uMHtGc/fcO1Gt1/L7i1e33VOvD4A9hfQLP+6ewd+BvG/gQ84Yh4oftEhAdjSMgBgwGL+jsppT7JYNpo6MHHg==} + engines: {node: '>= 10'} + + concat-map@0.0.1: + resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} + + core-util-is@1.0.3: + resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==} + + crc-32@1.2.2: + resolution: {integrity: sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ==} + engines: {node: '>=0.8'} + hasBin: true + + crc32-stream@4.0.3: + resolution: {integrity: sha512-NT7w2JVU7DFroFdYkeq8cywxrgjPHWkdX1wjpRQXPX5Asews3tA+Ght6lddQO5Mkumffp3X7GEqku3epj2toIw==} + engines: {node: '>= 10'} + css-select@5.2.2: resolution: {integrity: sha512-TizTzUddG/xYLA3NXodFM0fSbNizXjOKhqiQQwvhlspadZokn1KDy0NZFS0wuEubIYAV5/c1/lAr0TaaFXEXzw==} @@ -48,6 +136,9 @@ packages: resolution: {integrity: sha512-u/O3vwbptzhMs3L1fQE82ZSLHQQfto5gyZzwteVIEyeaY5Fc7R4dapF/BvRoSYFeqfBk4m0V1Vafq5Pjv25wvA==} engines: {node: '>= 6'} + dayjs@1.11.19: + resolution: {integrity: sha512-t5EcLVS6QPBNqM2z8fakk/NKel+Xzshgt8FFKAn+qwlD1pzZWxh0nVCrvFK7ZDb6XucZeF9z8C7CBWTRIVApAw==} + delayed-stream@1.0.0: resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} engines: {node: '>=0.4.0'} @@ -69,9 +160,15 @@ packages: resolution: {integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==} engines: {node: '>= 0.4'} + duplexer2@0.1.4: + resolution: {integrity: sha512-asLFVfWWtJ90ZyOUHMqk7/S2w2guQKxUI2itj3d92ADHhxUSbCMGi1f1cBcJ7xM1To+pE/Khbwo1yuNbMEPKeA==} + encoding-sniffer@0.2.1: resolution: {integrity: sha512-5gvq20T6vfpekVtqrYQsSCFZ1wEg5+wW0/QaZMWkFr6BqD3NfKs0rLCx4rrVlSWJeZb5NBJgVLswK/w2MWU+Gw==} + end-of-stream@1.4.5: + resolution: {integrity: sha512-ooEGc6HP26xXq/N+GCGOT0JKCLDGrq2bQUZrQ7gyrJiZANJ/8YDTxTpQBXGMn+WbIQXNVpyWymm7KYVICQnyOg==} + entities@4.5.0: resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==} engines: {node: '>=0.12'} @@ -96,6 +193,14 @@ packages: resolution: {integrity: sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==} engines: {node: '>= 0.4'} + exceljs@4.4.0: + resolution: {integrity: sha512-XctvKaEMaj1Ii9oDOqbW/6e1gXknSY4g/aLCDicOXqBE4M0nRWkUu0PTp++UPNzoFY12BNHMfs/VadKIS6llvg==} + engines: {node: '>=8.3.0'} + + fast-csv@4.3.6: + resolution: {integrity: sha512-2RNSpuwwsJGP0frGsOmTb9oUF+VkFSM4SyLTDgwf2ciHWTarN0lQTC+F2f/t5J9QjW+c65VFIAAu85GsvMIusw==} + engines: {node: '>=10.0.0'} + follow-redirects@1.15.11: resolution: {integrity: sha512-deG2P0JfjrTxl50XGCDyfI97ZGVCxIpfKYmfyrQ54n5FO/0gfIES8C/Psl6kWVDolizcaaxZJnTS0QSMxvnsBQ==} engines: {node: '>=4.0'} @@ -109,6 +214,17 @@ packages: resolution: {integrity: sha512-8RipRLol37bNs2bhoV67fiTEvdTrbMUYcFTiy3+wuuOnUog2QBHCZWXDRijWQfAkhBj2Uf5UnVaiWwA5vdd82w==} engines: {node: '>= 6'} + fs-constants@1.0.0: + resolution: {integrity: sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==} + + fs.realpath@1.0.0: + resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} + + fstream@1.0.12: + resolution: {integrity: sha512-WvJ193OHa0GHPEL+AycEJgxvBEwyfRkN1vhjca23OaPVMCaLCXTd5qAu82AjTcgP1UJmytkOKb63Ypde7raDIg==} + engines: {node: '>=0.6'} + deprecated: This package is no longer supported. + function-bind@1.1.2: resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} @@ -120,10 +236,17 @@ packages: resolution: {integrity: sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==} engines: {node: '>= 0.4'} + glob@7.2.3: + resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} + deprecated: Glob versions prior to v9 are no longer supported + gopd@1.2.0: resolution: {integrity: sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==} engines: {node: '>= 0.4'} + graceful-fs@4.2.11: + resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} + has-symbols@1.1.0: resolution: {integrity: sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==} engines: {node: '>= 0.4'} @@ -143,6 +266,75 @@ packages: resolution: {integrity: sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==} engines: {node: '>=0.10.0'} + ieee754@1.2.1: + resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==} + + immediate@3.0.6: + resolution: {integrity: sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==} + + inflight@1.0.6: + resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} + deprecated: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful. + + inherits@2.0.4: + resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} + + isarray@1.0.0: + resolution: {integrity: sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==} + + jszip@3.10.1: + resolution: {integrity: sha512-xXDvecyTpGLrqFrvkrUSoxxfJI5AH7U8zxxtVclpsUtMCq4JQ290LY8AW5c7Ggnr/Y/oK+bQMbqK2qmtk3pN4g==} + + lazystream@1.0.1: + resolution: {integrity: sha512-b94GiNHQNy6JNTrt5w6zNyffMrNkXZb3KTkCZJb2V1xaEGCk093vkZ2jk3tpaeP33/OiXC+WvK9AxUebnf5nbw==} + engines: {node: '>= 0.6.3'} + + lie@3.3.0: + resolution: {integrity: sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==} + + listenercount@1.0.1: + resolution: {integrity: sha512-3mk/Zag0+IJxeDrxSgaDPy4zZ3w05PRZeJNnlWhzFz5OkX49J4krc+A8X2d2M69vGMBEX0uyl8M+W+8gH+kBqQ==} + + lodash.defaults@4.2.0: + resolution: {integrity: sha512-qjxPLHd3r5DnsdGacqOMU6pb/avJzdh9tFX2ymgoZE27BmjXrNy/y4LoaiTeAb+O3gL8AfpJGtqfX/ae2leYYQ==} + + lodash.difference@4.5.0: + resolution: {integrity: sha512-dS2j+W26TQ7taQBGN8Lbbq04ssV3emRw4NY58WErlTO29pIqS0HmoT5aJ9+TUQ1N3G+JOZSji4eugsWwGp9yPA==} + + lodash.escaperegexp@4.1.2: + resolution: {integrity: sha512-TM9YBvyC84ZxE3rgfefxUWiQKLilstD6k7PTGt6wfbtXF8ixIJLOL3VYyV/z+ZiPLsVxAsKAFVwWlWeb2Y8Yyw==} + + lodash.flatten@4.4.0: + resolution: {integrity: sha512-C5N2Z3DgnnKr0LOpv/hKCgKdb7ZZwafIrsesve6lmzvZIRZRGaZ/l6Q8+2W7NaT+ZwO3fFlSCzCzrDCFdJfZ4g==} + + lodash.groupby@4.6.0: + resolution: {integrity: sha512-5dcWxm23+VAoz+awKmBaiBvzox8+RqMgFhi7UvX9DHZr2HdxHXM/Wrf8cfKpsW37RNrvtPn6hSwNqurSILbmJw==} + + lodash.isboolean@3.0.3: + resolution: {integrity: sha512-Bz5mupy2SVbPHURB98VAcw+aHh4vRV5IPNhILUCsOzRmsTmSQ17jIuqopAentWoehktxGd9e/hbIXq980/1QJg==} + + lodash.isequal@4.5.0: + resolution: {integrity: sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==} + deprecated: This package is deprecated. Use require('node:util').isDeepStrictEqual instead. + + lodash.isfunction@3.0.9: + resolution: {integrity: sha512-AirXNj15uRIMMPihnkInB4i3NHeb4iBtNg9WRWuK2o31S+ePwwNmDPaTL3o7dTJ+VXNZim7rFs4rxN4YU1oUJw==} + + lodash.isnil@4.0.0: + resolution: {integrity: sha512-up2Mzq3545mwVnMhTDMdfoG1OurpA/s5t88JmQX809eH3C8491iu2sfKhTfhQtKY78oPNhiaHJUpT/dUDAAtng==} + + lodash.isplainobject@4.0.6: + resolution: {integrity: sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==} + + lodash.isundefined@3.0.1: + resolution: {integrity: sha512-MXB1is3s899/cD8jheYYE2V9qTHwKvt+npCwpD+1Sxm3Q3cECXCiYHjeHWXNwr6Q0SOBPrYUDxendrO6goVTEA==} + + lodash.union@4.6.0: + resolution: {integrity: sha512-c4pB2CdGrGdjMKYLA+XiRDO7Y0PRQbm/Gzg8qMj+QH+pFVAoTp5sBpO0odL3FjoPCGjK96p6qsP+yQoiLoOBcw==} + + lodash.uniq@4.5.0: + resolution: {integrity: sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==} + math-intrinsics@1.1.0: resolution: {integrity: sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==} engines: {node: '>= 0.4'} @@ -155,9 +347,33 @@ packages: resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} engines: {node: '>= 0.6'} + minimatch@3.1.2: + resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} + + minimatch@5.1.6: + resolution: {integrity: sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==} + engines: {node: '>=10'} + + minimist@1.2.8: + resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} + + mkdirp@0.5.6: + resolution: {integrity: sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==} + hasBin: true + + normalize-path@3.0.0: + resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} + engines: {node: '>=0.10.0'} + nth-check@2.1.1: resolution: {integrity: sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==} + once@1.4.0: + resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} + + pako@1.0.11: + resolution: {integrity: sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==} + parse5-htmlparser2-tree-adapter@7.1.0: resolution: {integrity: sha512-ruw5xyKs6lrpo9x9rCZqZZnIUntICjQAd0Wsmp396Ul9lN/h+ifgVV1x1gZHi8euej6wTfpqX8j+BFQxF0NS/g==} @@ -167,16 +383,78 @@ packages: parse5@7.3.0: resolution: {integrity: sha512-IInvU7fabl34qmi9gY8XOVxhYyMyuH2xUNpb2q8/Y+7552KlejkRvqvD19nMoUW/uQGGbqNpA6Tufu5FL5BZgw==} + path-is-absolute@1.0.1: + resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} + engines: {node: '>=0.10.0'} + + process-nextick-args@2.0.1: + resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==} + proxy-from-env@1.1.0: resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==} + readable-stream@2.3.8: + resolution: {integrity: sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==} + + readable-stream@3.6.2: + resolution: {integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==} + engines: {node: '>= 6'} + + readdir-glob@1.1.3: + resolution: {integrity: sha512-v05I2k7xN8zXvPD9N+z/uhXPaj0sUFCe2rcWZIpBsqxfP7xXFQ0tipAd/wjj1YxWyWtUS5IDJpOG82JKt2EAVA==} + + rimraf@2.7.1: + resolution: {integrity: sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==} + deprecated: Rimraf versions prior to v4 are no longer supported + hasBin: true + + safe-buffer@5.1.2: + resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==} + + safe-buffer@5.2.1: + resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} + safer-buffer@2.1.2: resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} + saxes@5.0.1: + resolution: {integrity: sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==} + engines: {node: '>=10'} + + setimmediate@1.0.5: + resolution: {integrity: sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==} + + string_decoder@1.1.1: + resolution: {integrity: sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==} + + string_decoder@1.3.0: + resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==} + + tar-stream@2.2.0: + resolution: {integrity: sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==} + engines: {node: '>=6'} + + tmp@0.2.5: + resolution: {integrity: sha512-voyz6MApa1rQGUxT3E+BK7/ROe8itEx7vD8/HEvt4xwXucvQ5G5oeEiHkmHZJuBO21RpOf+YYm9MOivj709jow==} + engines: {node: '>=14.14'} + + traverse@0.3.9: + resolution: {integrity: sha512-iawgk0hLP3SxGKDfnDJf8wTz4p2qImnyihM5Hh/sGvQ3K37dPi/w8sRhdNIxYA1TwFwc5mDhIJq+O0RsvXBKdQ==} + undici@7.18.2: resolution: {integrity: sha512-y+8YjDFzWdQlSE9N5nzKMT3g4a5UBX1HKowfdXh0uvAnTaqqwqB92Jt4UXBAeKekDs5IaDKyJFR4X1gYVCgXcw==} engines: {node: '>=20.18.1'} + unzipper@0.10.14: + resolution: {integrity: sha512-ti4wZj+0bQTiX2KmKWuwj7lhV+2n//uXEotUmGuQqrbVZSEGFMbI68+c6JCQ8aAmUWYvtHEz2A8K6wXvueR/6g==} + + util-deprecate@1.0.2: + resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} + + uuid@8.3.2: + resolution: {integrity: sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==} + hasBin: true + whatwg-encoding@3.1.1: resolution: {integrity: sha512-6qN4hJdMwfYBtE3YBTTHhoeuUrDBPZmbQaxWAqSALV/MeEnR5z1xd8UKud2RAkFoPkmB+hli1TZSnyi84xz1vQ==} engines: {node: '>=18'} @@ -185,8 +463,77 @@ packages: resolution: {integrity: sha512-QaKxh0eNIi2mE9p2vEdzfagOKHCcj1pJ56EEHGQOVxp8r9/iszLUUV7v89x9O1p/T+NlTM5W7jW6+cz4Fq1YVg==} engines: {node: '>=18'} + wrappy@1.0.2: + resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} + + xmlchars@2.2.0: + resolution: {integrity: sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==} + + zip-stream@4.1.1: + resolution: {integrity: sha512-9qv4rlDiopXg4E69k+vMHjNN63YFMe9sZMrdlvKnCjlCRWeCBswPPMPUfx+ipsAWq1LXHe70RcbaHdJJpS6hyQ==} + engines: {node: '>= 10'} + snapshots: + '@fast-csv/format@4.3.5': + dependencies: + '@types/node': 14.18.63 + lodash.escaperegexp: 4.1.2 + lodash.isboolean: 3.0.3 + lodash.isequal: 4.5.0 + lodash.isfunction: 3.0.9 + lodash.isnil: 4.0.0 + + '@fast-csv/parse@4.3.6': + dependencies: + '@types/node': 14.18.63 + lodash.escaperegexp: 4.1.2 + lodash.groupby: 4.6.0 + lodash.isfunction: 3.0.9 + lodash.isnil: 4.0.0 + lodash.isundefined: 3.0.1 + lodash.uniq: 4.5.0 + + '@types/node@14.18.63': {} + + archiver-utils@2.1.0: + dependencies: + glob: 7.2.3 + graceful-fs: 4.2.11 + lazystream: 1.0.1 + lodash.defaults: 4.2.0 + lodash.difference: 4.5.0 + lodash.flatten: 4.4.0 + lodash.isplainobject: 4.0.6 + lodash.union: 4.6.0 + normalize-path: 3.0.0 + readable-stream: 2.3.8 + + archiver-utils@3.0.4: + dependencies: + glob: 7.2.3 + graceful-fs: 4.2.11 + lazystream: 1.0.1 + lodash.defaults: 4.2.0 + lodash.difference: 4.5.0 + lodash.flatten: 4.4.0 + lodash.isplainobject: 4.0.6 + lodash.union: 4.6.0 + normalize-path: 3.0.0 + readable-stream: 3.6.2 + + archiver@5.3.2: + dependencies: + archiver-utils: 2.1.0 + async: 3.2.6 + buffer-crc32: 0.2.13 + readable-stream: 3.6.2 + readdir-glob: 1.1.3 + tar-stream: 2.2.0 + zip-stream: 4.1.1 + + async@3.2.6: {} + asynckit@0.4.0: {} axios@1.13.2: @@ -197,13 +544,56 @@ snapshots: transitivePeerDependencies: - debug + balanced-match@1.0.2: {} + + base64-js@1.5.1: {} + + big-integer@1.6.52: {} + + binary@0.3.0: + dependencies: + buffers: 0.1.1 + chainsaw: 0.1.0 + + bl@4.1.0: + dependencies: + buffer: 5.7.1 + inherits: 2.0.4 + readable-stream: 3.6.2 + + bluebird@3.4.7: {} + boolbase@1.0.0: {} + brace-expansion@1.1.12: + dependencies: + balanced-match: 1.0.2 + concat-map: 0.0.1 + + brace-expansion@2.0.2: + dependencies: + balanced-match: 1.0.2 + + buffer-crc32@0.2.13: {} + + buffer-indexof-polyfill@1.0.2: {} + + buffer@5.7.1: + dependencies: + base64-js: 1.5.1 + ieee754: 1.2.1 + + buffers@0.1.1: {} + call-bind-apply-helpers@1.0.2: dependencies: es-errors: 1.3.0 function-bind: 1.1.2 + chainsaw@0.1.0: + dependencies: + traverse: 0.3.9 + cheerio-select@2.1.0: dependencies: boolbase: 1.0.0 @@ -231,6 +621,24 @@ snapshots: dependencies: delayed-stream: 1.0.0 + compress-commons@4.1.2: + dependencies: + buffer-crc32: 0.2.13 + crc32-stream: 4.0.3 + normalize-path: 3.0.0 + readable-stream: 3.6.2 + + concat-map@0.0.1: {} + + core-util-is@1.0.3: {} + + crc-32@1.2.2: {} + + crc32-stream@4.0.3: + dependencies: + crc-32: 1.2.2 + readable-stream: 3.6.2 + css-select@5.2.2: dependencies: boolbase: 1.0.0 @@ -241,6 +649,8 @@ snapshots: css-what@6.2.2: {} + dayjs@1.11.19: {} + delayed-stream@1.0.0: {} dom-serializer@2.0.0: @@ -267,11 +677,19 @@ snapshots: es-errors: 1.3.0 gopd: 1.2.0 + duplexer2@0.1.4: + dependencies: + readable-stream: 2.3.8 + encoding-sniffer@0.2.1: dependencies: iconv-lite: 0.6.3 whatwg-encoding: 3.1.1 + end-of-stream@1.4.5: + dependencies: + once: 1.4.0 + entities@4.5.0: {} entities@6.0.1: {} @@ -291,6 +709,23 @@ snapshots: has-tostringtag: 1.0.2 hasown: 2.0.2 + exceljs@4.4.0: + dependencies: + archiver: 5.3.2 + dayjs: 1.11.19 + fast-csv: 4.3.6 + jszip: 3.10.1 + readable-stream: 3.6.2 + saxes: 5.0.1 + tmp: 0.2.5 + unzipper: 0.10.14 + uuid: 8.3.2 + + fast-csv@4.3.6: + dependencies: + '@fast-csv/format': 4.3.5 + '@fast-csv/parse': 4.3.6 + follow-redirects@1.15.11: {} form-data@4.0.5: @@ -301,6 +736,17 @@ snapshots: hasown: 2.0.2 mime-types: 2.1.35 + fs-constants@1.0.0: {} + + fs.realpath@1.0.0: {} + + fstream@1.0.12: + dependencies: + graceful-fs: 4.2.11 + inherits: 2.0.4 + mkdirp: 0.5.6 + rimraf: 2.7.1 + function-bind@1.1.2: {} get-intrinsic@1.3.0: @@ -321,8 +767,19 @@ snapshots: dunder-proto: 1.0.1 es-object-atoms: 1.1.1 + glob@7.2.3: + dependencies: + fs.realpath: 1.0.0 + inflight: 1.0.6 + inherits: 2.0.4 + minimatch: 3.1.2 + once: 1.4.0 + path-is-absolute: 1.0.1 + gopd@1.2.0: {} + graceful-fs@4.2.11: {} + has-symbols@1.1.0: {} has-tostringtag@1.0.2: @@ -344,6 +801,62 @@ snapshots: dependencies: safer-buffer: 2.1.2 + ieee754@1.2.1: {} + + immediate@3.0.6: {} + + inflight@1.0.6: + dependencies: + once: 1.4.0 + wrappy: 1.0.2 + + inherits@2.0.4: {} + + isarray@1.0.0: {} + + jszip@3.10.1: + dependencies: + lie: 3.3.0 + pako: 1.0.11 + readable-stream: 2.3.8 + setimmediate: 1.0.5 + + lazystream@1.0.1: + dependencies: + readable-stream: 2.3.8 + + lie@3.3.0: + dependencies: + immediate: 3.0.6 + + listenercount@1.0.1: {} + + lodash.defaults@4.2.0: {} + + lodash.difference@4.5.0: {} + + lodash.escaperegexp@4.1.2: {} + + lodash.flatten@4.4.0: {} + + lodash.groupby@4.6.0: {} + + lodash.isboolean@3.0.3: {} + + lodash.isequal@4.5.0: {} + + lodash.isfunction@3.0.9: {} + + lodash.isnil@4.0.0: {} + + lodash.isplainobject@4.0.6: {} + + lodash.isundefined@3.0.1: {} + + lodash.union@4.6.0: {} + + lodash.uniq@4.5.0: {} + math-intrinsics@1.1.0: {} mime-db@1.52.0: {} @@ -352,10 +865,32 @@ snapshots: dependencies: mime-db: 1.52.0 + minimatch@3.1.2: + dependencies: + brace-expansion: 1.1.12 + + minimatch@5.1.6: + dependencies: + brace-expansion: 2.0.2 + + minimist@1.2.8: {} + + mkdirp@0.5.6: + dependencies: + minimist: 1.2.8 + + normalize-path@3.0.0: {} + nth-check@2.1.1: dependencies: boolbase: 1.0.0 + once@1.4.0: + dependencies: + wrappy: 1.0.2 + + pako@1.0.11: {} + parse5-htmlparser2-tree-adapter@7.1.0: dependencies: domhandler: 5.0.3 @@ -369,14 +904,99 @@ snapshots: dependencies: entities: 6.0.1 + path-is-absolute@1.0.1: {} + + process-nextick-args@2.0.1: {} + proxy-from-env@1.1.0: {} + readable-stream@2.3.8: + dependencies: + core-util-is: 1.0.3 + inherits: 2.0.4 + isarray: 1.0.0 + process-nextick-args: 2.0.1 + safe-buffer: 5.1.2 + string_decoder: 1.1.1 + util-deprecate: 1.0.2 + + readable-stream@3.6.2: + dependencies: + inherits: 2.0.4 + string_decoder: 1.3.0 + util-deprecate: 1.0.2 + + readdir-glob@1.1.3: + dependencies: + minimatch: 5.1.6 + + rimraf@2.7.1: + dependencies: + glob: 7.2.3 + + safe-buffer@5.1.2: {} + + safe-buffer@5.2.1: {} + safer-buffer@2.1.2: {} + saxes@5.0.1: + dependencies: + xmlchars: 2.2.0 + + setimmediate@1.0.5: {} + + string_decoder@1.1.1: + dependencies: + safe-buffer: 5.1.2 + + string_decoder@1.3.0: + dependencies: + safe-buffer: 5.2.1 + + tar-stream@2.2.0: + dependencies: + bl: 4.1.0 + end-of-stream: 1.4.5 + fs-constants: 1.0.0 + inherits: 2.0.4 + readable-stream: 3.6.2 + + tmp@0.2.5: {} + + traverse@0.3.9: {} + undici@7.18.2: {} + unzipper@0.10.14: + dependencies: + big-integer: 1.6.52 + binary: 0.3.0 + bluebird: 3.4.7 + buffer-indexof-polyfill: 1.0.2 + duplexer2: 0.1.4 + fstream: 1.0.12 + graceful-fs: 4.2.11 + listenercount: 1.0.1 + readable-stream: 2.3.8 + setimmediate: 1.0.5 + + util-deprecate@1.0.2: {} + + uuid@8.3.2: {} + whatwg-encoding@3.1.1: dependencies: iconv-lite: 0.6.3 whatwg-mimetype@4.0.0: {} + + wrappy@1.0.2: {} + + xmlchars@2.2.0: {} + + zip-stream@4.1.1: + dependencies: + archiver-utils: 3.0.4 + compress-commons: 4.1.2 + readable-stream: 3.6.2 diff --git a/remove-empty-license.js b/remove-empty-license.js deleted file mode 100644 index a5df6e1..0000000 --- a/remove-empty-license.js +++ /dev/null @@ -1,26 +0,0 @@ - -import fs from 'fs/promises'; - -async function removeEmptyLicenseRecords() { - try { - const filePath = './data.json'; - const data = await fs.readFile(filePath, 'utf-8'); - let records = JSON.parse(data); - - // Filter out records where "许可证号" is "空" - const filteredRecords = records.filter(record => record['许可证号'] !== '空'); - - // Update the sequential "序号" field for the remaining records - for (let i = 0; i < filteredRecords.length; i++) { - filteredRecords[i]['序号'] = (i + 1).toString(); - } - - await fs.writeFile(filePath, JSON.stringify(filteredRecords, null, 4), 'utf-8'); - console.log(`已从 data.json 中删除所有 "许可证号" 为 "空" 的数据。共删除 ${records.length - filteredRecords.length} 条记录。`); - console.log('序号字段已重新编号以保持顺序。'); - } catch (error) { - console.error('删除空许可证号数据时发生错误:', error.message); - } -} - -removeEmptyLicenseRecords(); diff --git a/scraper.js b/scraper.js deleted file mode 100644 index 48c21c4..0000000 --- a/scraper.js +++ /dev/null @@ -1,139 +0,0 @@ -import axios from 'axios'; -import * as cheerio from 'cheerio'; -import fs from 'fs/promises'; - -const BASE_URL = 'http://120.236.48.169:89/HPMS/'; -const START_URL = BASE_URL + 'presellCertList.aspx'; - -// Extracts table data from a given HTML content -function extractDataFromHtml($) { - const data = []; - // Corrected selector to find rows with table data, skipping the header - const rows = $('.resultlist table tr:has(td)'); - - rows.each((i, row) => { - const columns = $(row).find('td'); - // Based on debug.html, the structure is different and has 9 columns - if (columns.length >= 9) { - const licenseCell = $(columns[1]); // 许可证号 is the 2nd column - const licenseLinkTag = licenseCell.find('a'); - - const rowData = { - '序号': $(columns[0]).text().trim(), - '许可证号': licenseLinkTag.text().trim(), - '开发企业': $(columns[2]).text().trim(), - '项目名称': $(columns[3]).text().trim(), - '项目地址': $(columns[4]).text().trim(), - '批准时间': $(columns[5]).text().trim(), - '所在区域': $(columns[6]).text().trim(), - '总套数': $(columns[7]).text().trim(), - '可售套数': $(columns[8]).text().trim(), - '许可证链接': '', // Initialize - }; - - // The link is inside an onclick attribute, not a standard href - const onclickAttr = licenseLinkTag.attr('onclick'); - if (onclickAttr) { - // Make regex flexible to handle single or double quotes - const match = onclickAttr.match(/open_click\(['"]([^'"]+)['"]\)/); - if (match && match[1]) { - // match[1] will be like '/HPMS/PresellDetailsInfo.aspx?id=1012110' - // We need to resolve it against the origin, not the full BASE_URL path - const origin = new URL(BASE_URL).origin; - rowData['许可证链接'] = new URL(match[1], origin).href; - } - } - data.push(rowData); - } - }); - return data; -} - -async function main() { - try { - console.log('开始抓取第一页数据...'); - let response = await axios.get(START_URL, { - headers: { - 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36' - } - }); - - let $ = cheerio.load(response.data); - let allData = extractDataFromHtml($); - console.log(`第一页抓取完成,获得 ${allData.length} 条数据。`); - - // Find the total number of pages from the correct element - const pageCountSpan = $('#PageNavigator1_LblPageCount'); - const totalPages = pageCountSpan.length ? parseInt(pageCountSpan.text(), 10) : 1; - console.log(`共发现 ${totalPages} 页。`); - - // Get initial search form values to persist them across requests - const formValues = {}; - $('input[name^="txt"], select').each((idx, el) => { - const name = $(el).attr('name'); - if (name) { - formValues[name] = $(el).val() || ''; - } - }); - - - // Loop from the second page to the end - for (let i = 2; i <= totalPages; i++) { - console.log(`正在抓取第 ${i} 页...`); - - // Get the required form fields from the CURRENT page's response - const viewState = $('#__VIEWSTATE').val(); - const viewStateGenerator = $('#__VIEWSTATEGENERATOR').val(); - const eventValidation = $('#__EVENTVALIDATION').val(); - - if (!viewState) { - console.log('无法找到 __VIEWSTATE,终止抓取。'); - break; - } - - const postData = new URLSearchParams(); - postData.append('__EVENTTARGET', 'PageNavigator1$LnkBtnNext'); - postData.append('__EVENTARGUMENT', ''); - postData.append('__VIEWSTATE', viewState); - postData.append('__VIEWSTATEGENERATOR', viewStateGenerator); - if(eventValidation) { - postData.append('__EVENTVALIDATION', eventValidation); - } - - // Append the initial form values - for (const name in formValues) { - postData.append(name, formValues[name]); - } - postData.append('PageNavigator1$txtNewPageIndex', (i - 1).toString()); - - response = await axios.post(START_URL, postData, { - headers: { - 'Content-Type': 'application/x-www-form-urlencoded', - 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36', - 'Referer': START_URL, - } - }); - - $ = cheerio.load(response.data); - const nextPageData = extractDataFromHtml($); - console.log(`第 ${i} 页抓取完成,获得 ${nextPageData.length} 条数据。`); - - if (nextPageData.length === 0) { - console.log(`第 ${i} 页没有数据,抓取结束。`); - break; - } - allData = allData.concat(nextPageData); - } - - await fs.writeFile('data.json', JSON.stringify(allData, null, 4), 'utf-8'); - console.log(`\n抓取全站数据完毕!共 ${allData.length} 条记录已保存至 data.json 文件。`); - - } catch (error) { - console.error('抓取过程中发生错误:', error.message); - if (error.response) { - console.error('Status:', error.response.status); - } - } -} - -main(); \ No newline at end of file diff --git a/update-serial-numbers.js b/update-serial-numbers.js deleted file mode 100644 index bf539cc..0000000 --- a/update-serial-numbers.js +++ /dev/null @@ -1,21 +0,0 @@ - -import fs from 'fs/promises'; - -async function updateSerialNumbers() { - try { - const filePath = './data.json'; - const data = await fs.readFile(filePath, 'utf-8'); - const records = JSON.parse(data); - - for (let i = 0; i < records.length; i++) { - records[i]['序号'] = (i + 1).toString(); - } - - await fs.writeFile(filePath, JSON.stringify(records, null, 4), 'utf-8'); - console.log('data.json 文件中的序号字段已更新,并按顺序重新编号。'); - } catch (error) { - console.error('更新序号时发生错误:', error.message); - } -} - -updateSerialNumbers();