|
@@ -5,6 +5,7 @@ import (
|
|
|
"encoding/json"
|
|
|
"fmt"
|
|
|
"io/ioutil"
|
|
|
+ "log"
|
|
|
"net/http"
|
|
|
)
|
|
|
|
|
@@ -24,20 +25,12 @@ func main() {
|
|
|
headMap["Url"] = urlPrefix + "/QuerySummary?AreaCode=" + headMap["AreaCode"] + "&Page=1&Limit=50&Q=郑州赛驰计算机"
|
|
|
headMap["Cookie"] = "352284048787547"
|
|
|
headMap["User-Agent"] = "Mozilla/5.0 (Android;4.0.1;MANUFACTURER;Pro5);Version/ErrorVersion;ISN_GSXT"
|
|
|
- resp, err := SetHeader(headMap)
|
|
|
- if err != nil {
|
|
|
- fmt.Println(err.Error())
|
|
|
- return
|
|
|
- }
|
|
|
- defer resp.Body.Close()
|
|
|
- body, err := ioutil.ReadAll(resp.Body)
|
|
|
- if err != nil {
|
|
|
- return
|
|
|
- }
|
|
|
- result := make(map[string]interface{})
|
|
|
- json.Unmarshal(body, &result)
|
|
|
- //fmt.Println(result["RESULT"])
|
|
|
- infolist := result["RESULT"].([]interface{})
|
|
|
+ body := SetHeader(headMap)
|
|
|
+
|
|
|
+ result1 := make(map[string]interface{})
|
|
|
+ json.Unmarshal(body, &result1)
|
|
|
+ //fmt.Println(result1["RESULT"])
|
|
|
+ infolist := result1["RESULT"].([]interface{})
|
|
|
var ID, REGNO string
|
|
|
for _, v := range infolist {
|
|
|
ID = fmt.Sprint((v.(map[string]interface{}))["ID"])
|
|
@@ -46,24 +39,62 @@ func main() {
|
|
|
|
|
|
//下载工商公示信息
|
|
|
headMap["Url"] = urlPrefix + "/QueryGSInfo?AreaCode=" + headMap["AreaCode"] + "&EntId=" + ID + "&EntNo=" + REGNO + "&Info=All"
|
|
|
- resp, _ = SetHeader(headMap)
|
|
|
- defer resp.Body.Close()
|
|
|
- body, _ = ioutil.ReadAll(resp.Body)
|
|
|
- fmt.Println(string(body))
|
|
|
+ body = SetHeader(headMap)
|
|
|
+
|
|
|
+ fmt.Println("工商公示", string(body))
|
|
|
+ tmp1 := make(map[string]interface{})
|
|
|
+ json.Unmarshal(body, &tmp1)
|
|
|
+ baseInfo := tmp1["RESULT"].(map[string]interface{})
|
|
|
+ REGINFO := baseInfo["REGINFO"].(map[string]interface{})
|
|
|
+ LEGINFO := REGINFO["LEGINFO"].([]interface{})
|
|
|
+ fmt.Println("股东列表", LEGINFO)
|
|
|
+ //股东详情
|
|
|
+ for k, v := range LEGINFO {
|
|
|
+ gd := v.(map[string]interface{})
|
|
|
+ headMap["Url"] = urlPrefix + "/QueryGSDetail?Id=" + fmt.Sprint(gd["ID"]) + "&AreaCode=" + headMap["AreaCode"] + "&EntId=" + ID + "&EntNo=" + REGNO + "&Item=LegDetail"
|
|
|
+ body = SetHeader(headMap)
|
|
|
+ fmt.Println(k, string(body))
|
|
|
+ }
|
|
|
|
|
|
//下载企业公示信息
|
|
|
headMap["Url"] = urlPrefix + "/QueryQY?AreaCode=" + headMap["AreaCode"] + "&EntId=" + ID + "&EntNo=" + REGNO + "&Info=All"
|
|
|
- resp, _ = SetHeader(headMap)
|
|
|
- defer resp.Body.Close()
|
|
|
- body, _ = ioutil.ReadAll(resp.Body)
|
|
|
- fmt.Println(string(body))
|
|
|
+ body = SetHeader(headMap)
|
|
|
+
|
|
|
+ //企业年报信息
|
|
|
+ result2 := make(map[string]interface{})
|
|
|
+ json.Unmarshal(body, &result2)
|
|
|
+ tmp2 := result2["RESULT"].(map[string]interface{})
|
|
|
+ nblist := tmp2["REPORTINFO"].([]interface{})
|
|
|
+ nb := make(map[string]interface{})
|
|
|
+ for _, v := range nblist {
|
|
|
+ nb = v.(map[string]interface{})
|
|
|
+ if nb != nil {
|
|
|
+ break
|
|
|
+ }
|
|
|
+ }
|
|
|
+ //fmt.Println(nb)
|
|
|
+ nbId := fmt.Sprint(nb["ID"])
|
|
|
+ headMap["Url"] = urlPrefix + "/QueryQYReport?Id=" + nbId + "&AreaCode=" + headMap["AreaCode"] + "&EntId=" + ID + "&EntNo=" + REGNO + "&Info=All"
|
|
|
+ body = SetHeader(headMap)
|
|
|
+ fmt.Println("年报", string(body))
|
|
|
}
|
|
|
-func SetHeader(headMap map[string]string) (resp *http.Response, err error) {
|
|
|
+func SetHeader(headMap map[string]string) []byte {
|
|
|
req, _ := http.NewRequest("GET", headMap["Url"], nil)
|
|
|
//req, _ := http.NewRequest("GET", "https://120.52.121.75:8443/QueryAutoName?AreaCode=410000&Q=计算机&Size=5", nil)
|
|
|
req.Header.Add("User-Agent", headMap["User-Agent"])
|
|
|
req.Header.Add("Cookie", headMap["Cookie"])
|
|
|
req.Header.Add("Host", "120.52.121.75:8443")
|
|
|
req.Header.Add("Connection", "Keep-Alive")
|
|
|
- return client.Do(req)
|
|
|
+ resp, err := client.Do(req)
|
|
|
+ if err != nil {
|
|
|
+ log.Println(err.Error())
|
|
|
+ return nil
|
|
|
+ }
|
|
|
+ defer resp.Body.Close()
|
|
|
+ body, err := ioutil.ReadAll(resp.Body)
|
|
|
+ if err != nil {
|
|
|
+ log.Println(err.Error())
|
|
|
+ return nil
|
|
|
+ }
|
|
|
+ return body
|
|
|
}
|