golang 写入 csv 文件

发布时间: 2020-06-15 15:55:59 作者: 大象笔记

想把 golang colly 爬取的网站所有页面的 SEO 信息写入到一个 CSV 文件,方便排查是否有重复设置。

指定分隔符

因为 title, keywords, decription 信息中都可能包含逗号,所以我担心造成混淆。

但是内置的 csv 库只支持以单个字符 rune 来分割。参考:https://golang.org/pkg/encoding/csv/

不得已,用默认的英文逗号,测试了一下。

writer := csv.NewWriter(file)
writer.Comma = ','  // 默认就是逗号,这行代码可省略

golang 非常的贴心,在字段包含英文逗号时,会自动在两侧加双引号。

用 WPS 打开 csv 文件,格式正常。

代码示例

file, err := os.Create("seo_result.csv")
if err != nil {
	log.Println(err)
}
defer file.Close()
writer := csv.NewWriter(file)
writer.Comma = ','
headline := []string{"URL", "Title", "Keywords", "Description"}
writer.Write(headline)
writer.Flush()

参考

https://golangcode.com/write-data-to-a-csv-file/

我是一名山东烟台的开发者,联系作者