golang学习之html json解析
2015-03-19 10:09
489 查看
golang解析html文件
由于项目中需要用到json,使用的是https://github.com/bitly/go-simplejson.git
下载到配置的&gopath路径的src下面
连接的地址是:
步骤很简单
1.连接url获取页面内容
2.将页面内容转换成json
3.解析json,打印到控制台
代码很简单如下,直接运行就可以
由于项目中需要用到json,使用的是https://github.com/bitly/go-simplejson.git
下载到配置的&gopath路径的src下面
连接的地址是:
"http://lengxiaohua.com/lengxiaohuaapi/joke?action=getJokes&interval=weekly&sort=popular&type=text%7Cimage&start=0&limit=20"
步骤很简单
1.连接url获取页面内容
2.将页面内容转换成json
3.解析json,打印到控制台
代码很简单如下,直接运行就可以
</pre><pre name="code" class="cpp">// TestGoCommand project main.go package main import ( "encoding/json" "fmt" "go-simplejson" // for json get //"gopkg.in/mgo.v2" //"gopkg.in/mgo.v2/bson" "io/ioutil" "net/http" //"regexp" //"strconv" ) func Get(url string) (content string, statusCode int) { resp, err1 := http.Get(url) if err1 != nil { statusCode = -100 return } defer resp.Body.Close() data, err2 := ioutil.ReadAll(resp.Body) if err2 != nil { statusCode = -200 return } js, err := simplejson.NewJson(data) if err != nil { panic(err.Error()) } weilist := []weidata{}[:] for _, v := range js.Get("jokes").MustArray() { prase(v) //append(weilist, prase(v)) //fmt.Println(i, v) } fmt.Print(weilist) statusCode = resp.StatusCode content = string(data) return } /**interface的强制类型转换**/ func prase(m1 interface{}) (wei weidata) { var dat map[string]interface{} dat = m1.(map[string]interface{}) wei = weidata{dat["uri"].(string), dat["user_name"].(string), dat["content"].(string), string(dat["Jokeid"].(json.Number))} fmt.Println("", wei) return } type weidata struct { url string title string content string key string } func main() { fmt.Println(`Get index ...`) _, statusCode := Get("http://lengxiaohua.com/lengxiaohuaapi/joke?action=getJokes&interval=weekly&sort=popular&type=text%7Cimage&start=0&limit=20") if statusCode != 200 { return } }运行结果:
相关文章推荐
- Zp的Ext学习笔记(一)——坑爹的MVC(html中Extjs配置、proxy代理的前后台交互、json解析、后台处理传入json乱码)
- MVC进阶学习--HtmlHelper控件解析(一)
- MVC进阶学习--HtmlHelper控件解析(三)
- jQuery学习笔记--ajax查询,jQuery解析返回的json数据 详解
- Cocos2d-x学习(五):cocos2d-x解析json(使用libjson库)
- json学习json解析demo
- HTMLParser(一个比较流行的html代码解析、处理开源项目)学习,总结
- js解析json并生成html页面
- jQuery学习笔记--之json解析详解
- jQuery学习笔记--ajax查询,jQuery解析返回的json数据 详解
- python网络编程学习笔记(7):HTML和XHTML解析(HTMLParser、BeautifulSoup)
- MVC进阶学习--HtmlHelper控件解析(四)
- Android学习之JSON数据解析
- Android学习之JSON数据解析
- Json.Net学习笔记(十二) 协议解析
- MVC进阶学习--HtmlHelper控件解析(二)
- Android学习之JSON数据解析
- iphone学习笔记--JSON数据解析
- fastjson开发学习(二)---对返回的json进行解析
- android学习——由于BOM头导致的Json解析出错