完整的go爬虫项目

· · 3721 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

分享一个完整go语言实现的爬虫项目.

gitee传送门:https://gitee.com/ink5188/poem-parent

项目介绍

最近沉迷于古诗文的阅读上,细品其中,沉迷其中.

但平时阅读上感觉还是不大方便,故此有这个项目.

项目中尽可能的保留了自己在Java上的一些编码习惯,

如三层结构:model层 service层,controller层,贴近实际工作开发需要.

希望可以对目前为Java开发者有需要转向go的朋友提供一个参考.

如果该对您有帮助,请给一个star吧.

技术选型

项目结构


poem-parent

|-- poem-api            实体类模块

|  |-- common          公共工具

|  |  `-- base        基础工具

|  `-- module          业务模块

|      `-- core

|-- poem-core          后台核心模块

|  |-- common          公共工具

|  |  |-- base        基础工具

|  |  |-- log        日志工具

|  |  `-- pinyin      拼音转换工具

|  |-- conf            配置文件

|  |-- module          业务模块           

|  |  `-- core

|  `-- test

|      `-- bson

|-- poem-spider        爬虫模块

|  |-- common          公共工具             

|  |  `-- base        基础工具

|  |-- conf            配置文件

|  |-- launch          爬虫启动类

|  `-- module          业务模块

|      `-- gushiwen

`-- poem-web            http服务模块

|    |-- common        公共工具

|    |  |-- base      基础工具

|    |  |-- fliters    过滤器       

|    |  `-- routers    路由配置

|    |-- conf          配置文件

|    |-- module        业务模块

|    |  |-- core

|    |  |-- index

|    |  `-- spider

|    `-- test

模块依赖

| 模块名 | 依赖模块 |

| -------- | :----: |

| poem-api |无|

| poem-core |poem-api|

| poem-spider |poem-api oem-core|

| poem-web |poem-api poem-core poem-spider|

实现功能

  • 诗人数据的获取

  • 诗句数据的获取

  • 古籍数据的获取

  • 名句数据的获取

  • http api 分页接口提供

    
    项目为一次尝试转换练习,主要是将java的编写习惯尝试转换到go的开发上.仅作学习参考使用.
    
    

功能计划

  • 完善后台api提供

  • 对接flutter版的poem-app

使用教程

  • 配置环境

    • 安装 go

      • 配置GOPATH
    • 环境变量

    | 变量名称=值 | 说明 |

    | -------- | :----: |

    | GO111MODULE=on |开启go mod模块支持|

    | GOPROXY=https://goproxy.cn,direct |依赖包下载代理地址|

    | GOSUMDB=sum.golang.google.cn |包的哈希值校验地址|

  • 导入项目到JetBrains GoLand并启用go mod

    image
  • 下载资源包

    
      cd ./poem-api && go mod tidy
    
      cd ../poem-core && go mod tidy
    
      cd ../poem-spider && go mod tidy
    
      cd ../poem-web && go mod tidy
    
    
  • 手动创建数据库

    数据库名为: poem

  • 配置数据库连接

    • 各模块的conf下的 mysql.ini文件修改配置

      • ./poem-core/conf/mysql.ini

      • ./poem-spider/conf/mysql.ini

      • ./poem-web/conf/mysql.ini

  • 同步数据库表

    运行入口: ./poem-core/PC000Application.go

    
      注意运行时: working directory需为 ****/poem-parent/poem-core 下
    
    
    image
  • 执行爬取数据

    运行入口: ./poem-spider/PS000Application.go

  • 启动http服务

    运行入口: ./poem-web/PW000Application.go

    image
  • 联系作者


有疑问加站长微信联系(非本文作者)

本文来自:简书

感谢作者:

查看原文:完整的go爬虫项目

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

3721 次点击  ∙  1 赞  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传