go正则匹配uri并写到文件中

整理一下某个项目目前在用的接口,我是这样做的

1、先打开浏览器控制台,点到NetWork,然后把界面所有的涉及到接口请求的地方都点一遍。

2、右键->copy->Copy All AS HAR,这时就会把所有的接口请求复制成json形式。

3、去一个可以json生成结构体的网站点这里 ,把刚才复制的json生成结构体备用。

4、在目录下新建两个json文件,一个叫url.json,把json粘贴到里面,另一个叫uri.json,内容为空就行。

5、然后运行一下代码,它会把提取出来的uri放到uri.json里面


	file, err := os.Open("url.json")
	if err != nil {
		panic(err)
	}
	defer file.Close()
	content, err := ioutil.ReadAll(file)
	autoGenerated := &AutoGenerated{}
	err = json.Unmarshal(content, autoGenerated)
	if err != nil {
		panic(err)
	}
	strMap := make(map[string]struct{})
	for _,v := range autoGenerated.Log.Entries {
		if v.Request.URL != "" && v.ResourceType == "xhr" {
			//解析正则表达式,如果成功返回解释器
			reg1 := regexp.MustCompile(`(.cn)([/]+)([\w-\\/]*)(\\?)?`)
			if reg1 == nil { //解释失败,返回nil
				fmt.Println("regexp err")
				return
			}
			//根据规则提取关键信息
			result := reg1.FindAllStringSubmatch(v.Request.URL, -1)
			for _, text := range result {
				strMap[text[3] + "\n"] = struct{}{}
			}
		}
	}
	var str string
	for k := range strMap {
		str += k
	}
	err = ioutil.WriteFile("uri.json", []byte(str), 0777)
	if err != nil {
		panic(err)
	}


王兴振博客
请先登录后发表评论
  • latest comments
  • 总共0条评论