当前位置: 首页 > news >正文

做网站 java net自媒体发稿

做网站 java net,自媒体发稿,丹东做网站哪家好,网站建设教论坛【腾讯云 TDSQL-C Serverless产品体验】抓取processon热门模版的标题生成词云 serverless服务是腾讯云自研的新一代云原生关系型数据库TDSQ L-C的无服务器架构版,是全Serverless架构的云原生数据库 前言 体验了一下腾讯云刚出的TDSQL-C Serverless,使用…

【腾讯云 TDSQL-C Serverless产品体验】抓取processon热门模版的标题生成词云

serverless服务是腾讯云自研的新一代云原生关系型数据库TDSQ L-C的无服务器架构版,是全Serverless架构的云原生数据库

前言

体验了一下腾讯云刚出的TDSQL-C Serverless,使用它存储数据比较方便,能根据负载动态扩容,现在我们正好用来爬下数据分析一下。

数据源

processOn是比较常用的画图平台,它的模版也是比较丰富,但是基本上都要钱。。。
现在我们爬一下数据,看下这些推荐的模版标题的构成,即什么样的词汇比较容易被推荐,还有它的价格分布是怎样的
在这里插入图片描述

项目目录

config存储配置文件,dao负责链接数据库,logic下面就是具体的逻辑,包括爬虫、分析、词云分词。
在这里插入图片描述

爬虫

具体爬虫代码如下,这里才有异步存储,也正好测试下数据库的性能如何

import ("fmt""github.com/anaskhan96/soup""github.com/spf13/cast""strings""sync""td_test/logic/wordcloud"
)func Crawl(url string) error {res, err := soup.Get(url)if err != nil {return err}var wg sync.WaitGroupdoc := soup.HTMLParse(res)// 模版列表tempList := doc.FindAll("div", "class", "list-item-content")for _, item := range tempList {// 模版详情数据detail := item.Find("div", "class", "temp-item-detail")title := detail.Find("h2").Text()// view clone like数量var countList []intfor _, count := range detail.FindAll("span", "class", "count") {countList = append(countList, cast.ToInt(count.Text()))}// 获取价格owner := item.Find("div", "class", "temp-item-owner")priceStr := owner.Find("span", "class", "count").Text()var price float32if priceStr != "免费" {priceStr = strings.Trim(priceStr, "¥")price = cast.ToFloat32(priceStr)}// 异步存储go func() {wg.Add(1)defer wg.Done()saveToDB(title, countList, price)// 对标题进行分词并存储wordcloud.SplitTitleAndSave(title)}()}wg.Wait()return nil
}

分词

分词库用的是结巴分词,直接用它的精准模式即可

import ("github.com/yanyiwu/gojieba"
)var splitClient *gojieba.Jiebafunc init() {splitClient = gojieba.NewJieba()
}
func SplitTitleAndSave(title string) {words := splitClient.Cut(title, true)for i := range words {m := &TemplateTitleWordModel{Word: words[i]}m.Save()}return
}

分析词云和价格饼状图

词云和饼状图都是用的github.com/go-echarts/go-echarts,使用比较简单,词云需要把数据从数据库中提取出来塞进去就好了,词云代码:

func getTitleListFromDB() []opts.WordCloudData {var wordList []stringdao.GetDB().Raw("select word from template_title_words").Scan(&wordList)wordMap := make(map[string]int)for i := range wordList {wordMap[wordList[i]]++}ans := make([]opts.WordCloudData, 0)for k, v := range wordMap {ans = append(ans, opts.WordCloudData{Value: v, Name: cast.ToString(k)})}return ans
}
func createWordCloud(title string, data []opts.WordCloudData) {wc := charts.NewWordCloud()wc.SetGlobalOptions(charts.WithTitleOpts(opts.Title{Title: title}))wc.AddSeries(title, data).SetSeriesOptions(charts.WithWorldCloudChartOpts(opts.WordCloudChart{SizeRange: []float32{40, 80},Shape:     "cardioid",}),)f, _ := os.Create(fmt.Sprintf("wordcloud_%s.html", title))_ = wc.Render(f)
}

生成的词云如下
在这里插入图片描述
价格分布如下
在这里插入图片描述

小结

可以看到,标题中流程图词汇占比最高,价格中五块钱的模版占比最高,其次是3块钱的,再其次是免费的。
TDSQL-C Serverless使用体验上还不错,比较丝滑,感觉和远程数据库差不多,它动态扩缩容能力也能让我们少操点心

http://www.hkea.cn/news/895062/

相关文章:

  • 桂园精品网站建设费用网站seo查询站长之家
  • 安卓手机怎么做网站站长工具seo综合查询广告
  • 余姚网站建设的公司手机百度账号申请注册
  • 预付网站制作费怎么做凭证如何自制网站
  • 定制网站多少钱北京seo网站管理
  • 南昌做网站公司哪家好如何建立独立网站
  • 成都解放号网站建设什么是百度竞价
  • 网站优化的基本思想与原则百度号码
  • 沧州网站建设制作设计优化深圳seo优化推广
  • 建立一个网站需要什么技术网上培训机构
  • 网站设计与管理论文百度账号注册平台
  • 网站空间商推荐seo是什么职位缩写
  • 怎么建设boss网站文件外链
  • 百度推广网站建设费百度搜索引擎的网址是多少
  • php 手机网站 上传图片定制网站建设
  • 关于网站建设的问题百度关键词分析
  • 登录官方网站装修公司网络推广方案
  • 设计网站官网入口网站搜索优化方法
  • 网站优化qq群山东做网站
  • wordpress icomoon太原seo快速排名
  • 中华建设杂志网站记者数据指数
  • 网站开发测试情况南召seo快速排名价格
  • 上海仓储公司小红书seo优化
  • 南京建设公司网站网络营销整合推广
  • wordpress更改语言沈阳seo优化
  • wordpress免费网站世界大学排名
  • 做网站的属于什么专业?百度爱采购竞价推广
  • 网站建设一年多少恰东莞网站到首页排名
  • 新企业网站应该怎么做SEO优化广告联盟有哪些
  • 手机app开发网站建设软文推广文章案例