go 爬虫之 colly 简单示例

1. 背景

colly 是 Go 实现的比较有名的一款爬虫框架,而且 Go 在高并发和分布式场景的优势也正是爬虫技术所需要的。它的主要特点是轻量、快速,设计非常优雅,并且分布式的支持也非常简单,易于扩展。

2. 官方文档

https://go-colly.org/docs/

3. colly 安装

go get -u github.com/gocolly/colly

4. 简单示例

package mainimport ("fmt""github.com/gocolly/colly"
)func main() {// 创建一个新的爬虫实例c := colly.NewCollector()// 设置回调函数来处理每个找到的链接c.OnHTML("title", func(e *colly.HTMLElement) {fmt.Println("Title:", e.Text)})// 开始爬取指定 URLc.Visit("https://baidu.com")
}
  • 执行后的效果:
    在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/13769.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

RPC原理技术

RPC原理技术 背景介绍起源组件实现工作原理 背景 本文内容大多基于网上其他参考文章及资料整理后所得,并非原创,目的是为了需要时方便查看。 介绍 RPC,Remote Procedure Call,远程过程调用,允许像调用本地方法一样调…

Java 如何使用aws的kinesis实现消费端,消费流中数据

1.前言 AWS 官网给了两种方式实现: java 1.x java 2.x 这两种方式,包是不一样的,1.x是com.amazonaws,2是software.amazon.kinesis 使用也是天差地别,而且国内对kinesis这个资料简直少的可怜,这也就增加了开发难度, 2.什么是kinesis 我说一下kinesis是啥吧,其实和咱们队…

spring jpa 公共字段设计

数据库公共字段 1、多租户 tenantId 2、创建者名字 createName 3、创建者时间 createTime 4、更新者名字 updateName 5、更新者时间 updateTime 基础model类 /*** 基础Model*/ Data MappedSuperclass public class BaseModel implements Serializable{IdGeneratedValue(stra…

Linux DAY 6 _systemctl

systemctl命令,通过这个命令控制系统操作 语法:systemctl start | stop | status | enable | disable 服务名 start 启动 stop 关闭 status 查看状态 enable 开启开机自启 disable 关闭开机自启 服务名: NetworkManager 主网络服务 net…

源网络地址转换SNAT

左上角的是访问互联网发送的数据包,第一个是访问,第二个是网页传回来的 3、4项是源端口号和目的端口号(3是随机的(1024-65535),那个是http的网页服务端口就是80) 那么往回传数据的时候源和目的…

解决uniapp中的web-view页面进入时全屏问题

当我们在使用uniapp开发应用的时候,我们使用web-view进行外部页面的引入 在h5 浏览器下显示正常,我通过样式控制,上面是web-view,下面是菜单栏。 但是在 app调试或真机上,无论如何,web-view都占满全屏&…

0.零基础入门微服务实战课

0.零基础入门微服务实战课 1.微服务和 Spring Cloud1.1 什么是微服务?1.2 什么是 Spring Cloud?1.3 微服务 VS Spring Cloud 2.为什么要学微服务?3.Spring Cloud 组件介绍 1.微服务和 Spring Cloud 1.1 什么是微服务? 微服务是将…

【Leetcode 每日一题】28. 找出字符串中第一个匹配项的下标

给你两个字符串 haystack 和 needle ,请你在 haystack 字符串中找出 needle 字符串的第一个匹配项的下标(下标从 0 开始)。如果 needle 不是 haystack 的一部分,则返回 -1 。 示例 1: 输入:haystack &qu…

DFE_offset失调校准

1.校准原因 *制造工艺的限制:晶体管在制造过程中,由于工艺的限制,不可能做到完全对称,这导致了输入级晶体管的性能存在微小的差异。 *输入级偏置电流的不对称:输入级晶体管的偏置电流也会存在差异,这也会…

H4vdo 台湾APT-27视频投放工具

地址:https://github.com/MartinxMax/H4vdo 视频 关于 H4vdo RTMP lock 屏播放视频工具,可以向目标发送有效载荷,播放目标的屏幕内容。目标无法曹作计算机 使用方法 安装依赖 根据你的操作系统选择一个安装程序 RTMP 服务端 ./rtsp-simple-server.…

npm run dev启动element-ui,提示node_modules中webpack的版本跟package.json中webpack的版本不一致

问题一:修改node_modules/webpack/package.json版本为4.14.0,npm run dev时版本号又自动更改为 4.47.0 问题二:使用yarn 安装依赖,webpack的版本默认是4.47.0,为什么 求大佬们帮我解答一下以上两个问题 左侧是node_m…

【退役重学Java】关于 Sentinel 与服务熔断熔断

一、Sentinel 分布式系统的流量防卫兵 随着微服务的流行,服务和服务之间的稳定性变得越来越重要。Sentinel 以流量为切入点,从流量控制、熔断降级、系统负载保护等多个维度 二、服务熔断 是什么: 服务熔断是一种微服务架构中的容错机制&#…

数据中心大型AI模型网络需求

数据中心大型AI模型网络需求 随着Transformer的崛起和2023年ChatGPT的大规模应用,业界逐渐形成共识:遵循一定的规模效应原则,增加模型参数量能够显著提升模型性能。特别是在参数数量级跃升至数百亿乃至更高时,大型AI模型在语言理…

【C++】 类型转换的详细讲解

前言 本章我们将学习C里面的几种类型转换。如: static_cast、reinterpret_cast、const_cast、dynamic_cast。 这些都是操作符关键字。 目录 1. C的类型转换1.1 C语言的类型转换:1.2 为什么C需要四种类型转换:1.3 C强制类型转换:1.…

知识分享|非凸问题求解方法及代码示例【分类迭代】【大M法】

主要内容 之前发布了非线性问题线性化的几种方法,如知识分享|分段函数线性化及matlab测试,学习园地 | yalmip实用操作-线性化,非线性优化 | 非线性问题matlabyalmip求解案例,但是在实际建模及编程过程中,会遇到各种…

记录一个更新adobe软件导致加载PDF文件异常的问题

最近由于项目需要,没有办法把原有的adobe正版软件进行了卸载,换了个盗版软件,结果导致我的pdf文件加载的时候出现异常。 报错的语句是这个 string str = System.Environment.CurrentDirectory; // string fileName = MyOpenFileDialog(); axAcroPDF1.LoadFile(…

一顿五元钱的午餐

在郑州喧嚣的城市一隅,藏着一段鲜为人知的真实的故事。 故事的主角是一位年过半百的父亲,一位平凡而又伟大的劳动者。岁月在他脸上刻下了深深的痕迹,但他眼神中闪烁着不屈与坚韧。 他今年52岁,为了给远在家乡的孩子们一个更好的…

人工智能应用-实验4-蚁群算法求解 TSP

文章目录 🧡🧡实验内容🧡🧡🧡🧡代码🧡🧡🧡🧡分析结果🧡🧡🧡🧡实验总结🧡🧡 &#x1f9…

【vue】封装的天气展示卡片,在线获取天气信息

源码 <template><div class"sen_weather_wrapper"><div class"sen_top_box"><div class"sen_left_box"><div class"sen_top"><div class"sen_city">山东</div><qctc-time cl…

OCM认证考试难吗?

OCM&#xff08;Oracle Certified Master&#xff09;认证考试是Oracle公司提供的最高级别的专业认证&#xff0c;它确实被认为是非常具有挑战性的考试。以下是关于OCM认证考试难度的一些关键点&#xff1a; 深入的技术要求&#xff1a;OCM认证不仅要求考生具备Oracle数据库的…