0
1

Golang ブラウザ操作を自動化する

Last updated at Posted at 2023-11-04

はじめに

golangとgolangのpackage agoutiを用いて Chrome のブラウザ操作を自動化する方法を記載する。

実装

  1. 任意のプロジェクトに agoutiをインストール
go get github.com/sclevine/agouti

2.Chrome用ドライバー chromeDriver をインストールしてPATHを設定

chromeDriverはプロジェクト直下に配置、PATHを通した。
PATHを通すのは以下の記事を参考

3.コードを実行


func main() {
	driver := agouti.ChromeDriver(agouti.Browser("chrome"))
	if err := driver.Start(); err != nil {
		log.Fatalf("Failed to start driver:%v", err)
	}
	defer driver.Stop()

	page, err := driver.NewPage()
	if err != nil {
		log.Fatalf("Failed to open page:%v", err)
	}

	if err := page.Navigate("開たいサイトのurl"); err != nil {
		log.Fatalf("Failed to navigate:%v", err)
	}

}

初回だと、「Chromedriverを開こうとしたら、chromedriverは開発元を検証できないため開けません」と表示される。
システム設定を開き、許可するを押下すると使用できるようになる。

注意点

画面がsleepモードだとChromedriverがうまく起動しないので、画面onかつロックがかかっていない状況でChromedriverを実行すること。

Chromeがアップデートしたら。Chromedriverもアップデートする必要がある。
以下からダウンロードする。

参考

https://sites.google.com/chromium.org/driver/downloads
https://note.com/shift_tech/n/nbf70b1953eec

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1