gocolly是用go实现的网络爬虫框架,目前在github上具有3400+星,名列go版爬虫程序榜首。gocolly快速优雅,在单核上每秒可以发起1K以上请求;以回调函数的形式提供了一组接口,可以实现任意类型的爬虫;依赖goquery库可以像jquery一样选择web元素。
gocolly的官方网站是http://go-colly.org/,提供了详细的文档和示例代码。安装colly:
在代码中导入包:
colly的主体是Collector对象,管理网络通信和负责在作业运行时执行附加的回掉函数。使用colly需要先初始化Collector:
可以向colly附加各种不同类型的回掉函数,来控制收集作业或获取信息。增加回掉函数:
回掉函数的调用顺序如下:
1. OnRequest
在发起请求前被调用
2. OnError
请求过程中如果发生错误被调用
3. OnResponse
收到回复后被调用
4. OnHTML
在OnResponse之后被调用,如果收到的内容是HTML
5. OnScraped
在OnHTML之后被调用
官方提供的Basic示例代码:
该实例程序仅访问hackerspaces.org域内的链接,OnHTML回掉函数的选择器为a[href],选择页面内具有href属性的a类型元素,找到链接后继续抓取。 运行的部分结果如下:
程序员编程交流QQ群:805358732
如果你想用Python开辟副业赚钱,但不熟悉爬虫与反爬虫技术,没有接单途径,也缺乏兼职经验
关注下方微信公众号:Python编程学习圈,获取价值999元全套Python入门到进阶的学习资料以及教程,还有Python技术交流群一起交流学习哦。