Edited at

【Go】超軽量なスクレイピングライブラリ作ってみた

More than 1 year has passed since last update.


リポジトリ

https://github.com/nakabonne/netsurfer


はじめに

Webクローラーを開発する際、フルスクラッチで作るのは少し面倒だし、フルスタックなのはいらない、、という時に丁度いいライブラリがなかったので作りました。

本当に最低限の機能のみ搭載しました。


機能

主な3つの機能を紹介します


オーガニック検索

キーワードを入れて自然検索結果画面に表示されるページURLを返します。


sample_search.go

import "github.com/ryonakao/netsurfer"

urls, err := netsurfer.OrganicSearch("キーワード", 3)


順位調査

指定キーワードで検索した時、指定ページがオーガニックで何位に掲載されるかを返します。


sample_rank.go

import (

"net/url"
"github.com/ryonakao/netsurfer"
)
u, _ := url.Parse("https://qiita.com/ryonakao")
rank, _ := netsurfer.GetRank(u, "ryonakao", 2)


HTML取得


sample_HTML.go

import "github.com/ryonakao/netsurfer"

html, err := netsurfer.GetHTML("https://qiita.com/ryonakao")


まとめ

もし使って頂き、不備等がございましたらお申し付け下さいませ。