![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
golang
jsfantasy
虚心、实腹、弱志、强骨
展开
-
Golang实现简单爬虫框架(1)——项目介绍与环境准备
Golang实现简单爬虫框架(1)——项目介绍与环境准备最近学习Go语言,看了慕课网Google工程师深度讲解go语言这门课,现在把课程中的爬虫项目整理出来,同时也作为自己学习的一个总结。本人菜鸟一枚,如有任何问题,欢迎大家指正。一、环境准备1、go语言安装Go安装包下载网址:https://studygolang.com/dl选择对应的版本下载即可Windows用户推荐使用msi安...原创 2019-05-21 20:37:13 · 1628 阅读 · 0 评论 -
Golang实现简单爬虫框架(2)——单任务版爬虫
Golang实现简单爬虫框架(2)——单任务版爬虫上一篇博客《Golang实现简单爬虫框架(1)——项目介绍与环境准备》中我们介绍了go语言的开发环境搭建,以及爬虫项目介绍。本次爬虫爬取的是珍爱网的用户信息数据,爬取步骤为:1.进入珍爱网城市页面爬取所有的城市信息2.进入城市详情页爬取用户URL地址信息3.进入用户详情页爬取所需要的用户信息注意:在本此爬虫项目中,只会实现一个简单的...原创 2019-05-21 20:43:58 · 1094 阅读 · 0 评论 -
Golang实现简单爬虫框架(3)——简单并发版
在上篇文章Golang实现简单爬虫框架(2)——单任务版爬虫中我们实现了一个简单的单任务版爬虫,对于单任务版爬虫,每次都要请求页面,然后解析数据,然后才能请求下一个页面。整个过程中,获取网页数据速度比较慢,那么我们就把获取数据模块做成并发执行。在项目的基础上,实现多任务并发版爬虫。项目github地址:https://github.com/NovemberChopin/golang-crawle...原创 2019-05-22 10:49:45 · 479 阅读 · 2 评论 -
Golang实现简单爬虫框架(4)——队列实现并发任务调度
前言在上一篇文章《Golang实现简单爬虫框架(3)——简单并发版》中我们实现了一个最简单并发爬虫,调度器为每一个Request创建一个goroutine,每个goroutine往Worker队列中分发任务,发完就结束。所有的Worker都在抢一个channel中的任务。但是这样做还是有些许不足之处,比如控制力弱:所有的Worker在抢同一个channel中的任务,我们没有办法控制给哪一个wor...原创 2019-05-27 11:46:25 · 1101 阅读 · 1 评论 -
Golang实现简单爬虫框架(5)——项目重构与数据存储
前言在上一篇文章《Golang实现简单爬虫框架(4)——队列实现并发任务调度》中,我们使用用队列实现了任务调度,接下来首先对两种并发方式做一个同构,使代码统一。然后添加数据存储模块。注意:本次并发是在上一篇文章简单并发实现的基础上修改,所以没有贴出全部代码,只是贴出部分修改部分,要查看完整项目代码,可以查看上篇文章,或者从github下载项目源代码查看1、项目重构(1)并发引擎通过分析我...原创 2019-05-30 15:36:21 · 340 阅读 · 0 评论