Golang Go语言中,请教一下,最近在学习,有没有 Golang Go语言能做的有意思的小工具啥的

发布于 1周前 作者 wuwangju 来自 Go语言

Golang Go语言中,请教一下,最近在学习,有没有 Golang Go语言能做的有意思的小工具啥的
想深入学习,但是想找个感兴趣的点,激发一下

大佬们求赐教

35 回复

爬虫?

更多关于Golang Go语言中,请教一下,最近在学习,有没有 Golang Go语言能做的有意思的小工具啥的的实战系列教程也可以访问 https://www.itying.com/category-94-b0.html


前段时间用 go 写了个 ws/wss tunnel,欢迎看看 https://github.com/Ehco1996/ehco

但是一直没支持 udp,欢迎 pr :)

我也用 go 写个了 tunnel 。但是是一个 SSL 伪装的 tunnel,把原始 SSL 握手包的 certificate 和 SNI 等全部混淆至 SSL 扩展中。然后在服务器端解码。相比 ws/wss 握手过程快了非常多…

谢谢楼上各位哥们儿

https://gitee.com/lwch/dnspod.cmd
批量管理 dnspod 域名的命令行工具,好多年前写的不知道还能用不

把 cat, find, grep 用 Go 实现一下

写个代理吧

你们都这么明目张胆地爬墙, 真的没问题吗

我也在寫代理

https://github.com/boris1993/dnsupdater
一个拿 CloudFlare DNS 当 DDNS 用的玩意

无编程经验的咖啡师,看了一阵子文档,写了个自用的 telegram bot 辅助群组管理。

https://github.com/LockGit/Go
中英文翻译互转
命令行下的 dns 信息工具 (golang 简单实现类似 dig 的功能)
实现 socks5 代理来访问看上去不能访问的资源

golang 聊天室
https://github.com/LockGit/gochat

go 用来写 网络方面的东西很好用。 可以自己对着开源的爬墙软件 来改一个

写 GUI 程序吧,依赖 chrome 浏览器,但不依赖 CGO,有个框架叫 lorca

go 做个自动按键工具

最近想自己做个黑 NAS,可以考虑写个文件管理的服务,类似于网盘。

https://github.com/dushixiang/4dnat 专门为目的地址转换而服务的工具,几百行代码就够了

https://github.com/dushixiang/tcpwall tcpkill 的 go 实现和增强,想杀死某一个已建立的 tcp 连接?来试试 tcpwall 吧

我也写了一个代理😂😂

https://github.com/Jinnrry/Mercurius

V 站真的人手一个导航站,人手一个代理项目啊

我用 fyne 的 gui 写了一个 某易云和某狗的 音乐下载器 .

可以看看百度开源的 bfe 项目

老哥给个链接看下^_^

mark 了, 谢谢老哥。

大佬也贴一个链接呀

贴不了 非常 dirty…

这个应该可以

go 微服务学习可以看 https://github.com/tal-tech/go-zero
涵盖了绝大部分微服务所需的知识点

这个想法不错。赞

不知道我的感兴趣的点,和你是否 match,哈哈。
下面是我这两年练手的成果,代码(实现+测试)都控制在 2k 行左右。除了 gout 代码有点多。

如果想了解反射,可以看 deepcopy 。
如果想了解数据结构,字典树,和时间轮,可以看 brouter 和 timer
命令行解析器,可看 clop

[gout]( https://github.com/guonaihong/gout) restful api 和 http benchmark lib

[clop]( https://github.com/guonaihong/clop) 命令行解析器,只要会写 struct,定义 tag,轻松实现 gnu 风格命令行

[pcurl]( https://github.com/antlabs/pcurl) 解析 curl 命令库,生成*http.Request,让你的应用瞬间秒懂 curl 。

[strsim]( https://github.com/antlabs/strsim) 计算字符串相似度库,后端集成多种算法

[timer]( https://github.com/antlabs/timer) 基于 5 级时间轮实现的定时器,性能可观,fast, fast, fast

[deepcopy]( https://github.com/antlabs/deepcopy) 深度拷贝库,支持异构 struct,map, slice 等数据结构的深度拷贝

[brouter]( https://github.com/antlabs/brouter) 高性能 http router 库,API 风格类似 httprouter,比 1.3.0 的 httprouter 快 50-60%的样子,比开发版本的 httprouter 慢一点,大约是 92-95%的性能

在学习Golang的过程中,确实可以尝试制作一些有意思的小工具来加深理解和实践。以下是一些建议:

  1. Web应用程序:利用Gin框架,可以快速搭建一个轻量级的Web服务器,处理HTTP请求,实现如简单博客、待办事项列表等Web应用。
  2. 命令行工具:使用Cobra库,可以方便地创建命令行界面工具,用于自动化脚本、系统管理等场景。
  3. 并发程序可视化:借助Go Concurrency Visualizer工具,可以编写和分析并发程序,通过图形界面更好地理解Goroutine和Channel的工作原理。
  4. 内存使用优化:利用Go Memory Ballast,可以模拟大量内存使用场景,测试和优化程序的内存管理。
  5. HTML/XML解析工具:使用Go Query,可以轻松解析HTML/XML文档,提取所需信息,适用于网页爬虫、数据抓取等任务。
  6. GUI小工具:虽然Golang的GUI库相对不如其他语言丰富,但仍可以使用Fyne等库来创建简单的图形用户界面工具。

通过实践这些小工具,不仅可以加深对Golang特性的理解,还能提升编程技能。建议从自己的兴趣点出发,选择适合的项目进行尝试。

回到顶部