go语言解析html

有两个不错的库: https://github.com/PuerkitoBio/goquery 一个是 http://code.google.com/p/go.net/html html是html的解析器,把html文本解析出来,goquery基于html包,在此基础上结合cascadia 包(一个css选择器工具),实现类似于jquery的功能,操作html非常方便。 使用goquery来查找,选择相应的html节点,但如果要对选择的节点进行修改,删除操作,还需要深入使用html包。 html...阅读全文

阅读:40417 评论:2

go依赖包管理工具对比

July 10, 2017 in Tech GOPATH和GOROOT GOROOT并不是必须要设置的。 GOPATH必须要设置,但并不是固定不变的 本项目内部的依赖 管理外部的依赖包 使用GOPATH来管理外部依赖 vendor godep glide govendor golang官方dep 各依赖管理工具对比 gvt vendor的问题 当开始真正用go去做项目的时候,不可避免的就会遇到依赖包的问题。go的依赖包管理与java+maven的依赖管理不太一样,我们从GOPATH开始逐渐理解其...阅读全文

阅读:41213 评论:0

Golang精编100题-搞定golang面试

版权声明:本文为博主尹成联系QQ77025077,微信18510341407原创文章,欢迎转载侵权不究。 https://blog.csdn.net/yincheng01/article/details/80462619 Golang精编100题能力模型级别 模型 初级 primary 熟悉基本语法,能够看懂代码的意图;在他人指导下能够完成用户故事的开发,编写的代码符合CleanCode规范; 中级 intermediate 能够独立完成用户故事的开发和测试;能够嗅出代码的坏味道,并知道如何重构...阅读全文

2018年05月26日 16:08:16 itcastcpp
阅读:1232 评论:0

go gin+casbin RBAC 简单例子

go gin+casbin RBAC 简单例子 说明 利用的库: github.com/casbin/casbin github.com/gin-gonic/gin github.com/facebookgo/inject 本文为 参考此项目: https://github.com/LyricTian/gin-admin ,强烈推荐!!! casbin文档: https://casbin.org/zh-CN/ 下面例子 未利用 casbin 的 adapter, 而是启动的时候 先初始化, 然后...阅读全文

2019-01-10 16:20:53 295631788
阅读:8006 评论:0

Go Modules 的使用方法 —— Go 官方博文

## 简介 Go 1.11 和 1.12 引入了[对 modules(模块)的初步支持](https://golang.org/doc/go1.11#modules),这是一个能让依赖项的版本信息更加明确和易于管理的依赖管理系统。本文旨在为你使用模块提供基本的操作指导。后续会有一篇文章来说明如何发布一个模块以供别人使用。 一个模块是一系列 [Go 代码包](https://golang.org/ref/spec#Packages) 的集合,它们保存在同一个文件树中。文件树的根目录中包...阅读全文

2019-03-28 20:37:18 Alex-liutao
阅读:5752 评论:4

Golang 执行Python脚本

一、两种方式 通过命令行的方式调用python脚本 github.com/sbinet/go-python 二、实现 1、通过命令行的方式调用python脚本 在golang对jpg图片dpi操作未提供原生的相关接口,只好依赖python脚本达到想要的目的 main.py from PIL import Image as ImagePIL, ImageFont, ImageDraw import base64 import io import sys def main(argv): msg="s...阅读全文

2019.04.25 09:43* 承诺一时的华丽
阅读:15980 评论:0

sync包 mutex源码阅读

借鉴于Go夜读,加了个人理解:https://reading.developerlearning.cn/articles/sync/sync_mutex_source_code_analysis/ go版本:go1.12 windows/amd64 结构体 // A Mutex is a mutual exclusion lock. // The zero value for a Mutex is an unlocked mutex. // // A Mutex must not be copi...阅读全文

2019.05.18 15:11 one_zheng
阅读:588 评论:0

剑指offer算法---Go实现

简介 最近在准备面试,发现一个不错的网站推荐给大家。也希望通过Go实现来把里面 剑指offer算法 的题做一下。如果觉得帮到了你,希望能为我点个赞呀。如果发现代码有错,非常希望您能够在留言中指出。https://github.com/CyC2018/CS...文章只贴自己写的代码,题目的所有内容和解题思路都在上面的网站里。一些比较简单无聊的题,就跳过。。 未完待续。 归并排序,快排,堆排序 这一节不出现在剑指offer里边,但是经常面试问到。1.归并排序 package main import ...阅读全文

2019-08-15 20:02:32 l1nkkk
阅读:1244 评论:1

在 VS Code 中使用 gopls

简介 我一直是用 VS Code 作为 Go 语言的 IDE,使用的是官方的 Go 扩展,但在使用过程中发现有时候代码提示不够智能, 或者说基本没有提示. Go 扩展默认是使用大量的 Go 工具来提供各种功能的,每个工具提供某个方面的能力, 比如代码提示是依靠 gocode 的. 不过微软在开发 VS Code 过程中, 定义一种协议, 语言服务器协议,Language Server Protocol. 这可是个好东西, 如果你需要开发编辑器或 IDE,就不需要再为每种语言实现诸如自动完成, 代...阅读全文

2019-09-05 16:02:33 帅气猫咪
阅读:23619 评论:0

Go语言高性能字符串拼接

这是一片关于stackoverflow热门问题的文章 How to efficiently concatenate stringsGo里面string是最基础的类型,是一个只读类型,针对他的每一个操作都会创建一个新的string 所以,如果我在不知道结果是多少长字符串的情况下不断的连接字符串,怎么样的方式是最好的呢? 1. 方法一:使用strings.Builder 从Go 1.10(2018)版本开始可以使用 strings.Builder, A Builder is used to effi...阅读全文

2019-09-17 10:32:35 TechMojotv
阅读:1074 评论:1

vue+golang实现评论系统

数据结构设计: 评论可以被回复, 回复也可以被回复, 以此连接下去就形成了树的结构 哪个用户评论、 评论的对象类型(视频、文章、用户动态...)、 具体哪个评论对象、 评论的内容、 评论的父亲节点(对于顶级评论没有父亲节点)、 根节点(如果想取出某一条评论的所有孩子节点, 也就是取出评论下方的所有回复就可以select * from comments where root_id=comment.id)、 回复了谁(如果不加这个字段需要先关联查询父节点、再从父节点关联查询用户) 本项目基于gin+...阅读全文

2019.10.24 19:58:45 aside section._ 等
阅读:1636 评论:2

如何写好 Go 代码

我写了多年的 Go 微服务,并在写完两本关于 ([API Foundations in Go](https://leanpub.com/api-foundations) 和 [12 Factor Applications with Docker and Go](https://leanpub.com/12fa-docker-golang)) 主题的书之后,有了一些关于如何写好 Go 代码的想法 但首先,我想给阅读这篇文章的读者解释一点。好代码是主观的。你可能对于好代码这一点,有完全不同的想...阅读全文

2020-05-31 14:43:14 watermelo
阅读:1587 评论:0

Golang技巧之默认值设置的高阶玩法

最近使用 GRPC 发现一个设计特别好的地方,非常值得借鉴。 我们在日常写方法的时候,希望给某个字段设置一个默认值,不需要定制化的场景就不传这个参数,但是 Golang 却没有提供像 PHP、Python 这种动态语言设置方法参数默认值的能力。 低阶玩家应对默认值问题 以一个购物车举例。比如我有下面这样一个购物车的结构体,其中 CartExts 是扩展属性,它有自己的默认值,使用者希望如果不改变默认值时就不传该参数。但是由于 Golang 无法在参数中设置默认值,只有以下几个选择: 提供一个初始...阅读全文

2020-06-30 10:32:33 大愚Talk
阅读:1902 评论:0

beego 代码生成工具体验

# beego 代码生成工具体验 ## 设计 MySQL 数据库 1. 通过 MySQL Workbench EER Digram 设计表和关系 ![image.png](https://static.studygolang.com/200626/7a33780bbf688321021bc24c6dafdb66.png) 2. 设置 MySQL Workbench 默认目标版本和 MySQL 服务器版本一致 ![image.png](https://static.study...阅读全文

2020-06-26 16:03:59 mdjdot
阅读:1174 评论:2

Go 使用validator进行后端数据校验

包下载:go get github.com/go-playground/validator/v10 一、概述 在接口开发经常会遇到一个问题是后端需要写大量的繁琐代码进行数据校验,所以就想着有没有像前端校验一样写规则进行匹配校验,然后就发现了validator包,一个比较强大的校验工具包下面是一些学习总结,详细内容可以查看validator 二、操作符说明 标记 标记说明 , 多操作符分割 | 或操作 - 跳过字段验证 三、常用标记说明 标记 标记说明 例 required 必填 Field或St...阅读全文

阅读:5064 评论:0

【go语言学习】web开发框架gin

一、gin简介 Gin 是一个用 Go (Golang) 编写的 HTTP web 框架。 它是一个类似于 martini 但拥有更好性能的 API 框架,由于 httprouter,速度提高了近 40 倍,是最快的 http 路由器和框架。 如果你是性能和高效的追求者,你会爱上 Gin。 二、gin安装和使用 安装 下载并安装 gin: $ go get -u github.com/gin-gonic/gin 2、将gin引入到项目中: import "github.com/gin-gonic...阅读全文

2020-10-18 22:32:38 Every_dawn
阅读:740 评论:0