【Go 언어】Agouti로 Google Chrome을 자동으로 조작하기
사전 준비
Agouti 설치
다음 명령으로 Agouti를 설치합니다.
$ go get github.com/sclevine/agouti
Chrome Driver 설치
그런 다음 자동으로 조작한 브라우저에 해당하는 WebDriver를 설치합니다.
이번에는 Google 크롬을 사용하고 싶으므로 아래 명령으로 Google 크롬의 웹 드라이브 (chromedriver)를 설치합니다.
$ brew install chromedriver
Google 크롬 버전으로 잘 작동하지 않는 경우 크롬 버전을 확인하고 아래 사이트에서 드라이버를 다운로드하십시오.
자동 조작
사전 준비가 완료되면 브라우저를 자동 조작하는 코드를 작성합니다.
이번에는
Go 언어의 공식 페이지를 열고 Documents까지의 전환 움직임을 자동화해 봅니다.
이하, 자동 조작을 위한 코드입니다.
각각의 코드의 의미는 코멘트 아웃으로 기술하고 있습니다.
main.gopackage main
import (
"log"
"github.com/sclevine/agouti"
)
func main() {
//ChromeDriverを使用するための記述
driver := agouti.ChromeDriver()
//WebDriverプロセスを開始する
err := driver.Start()
if err != nil {
log.Fatal(err)
}
//WebDriverプロセスを停止する(main関数の最後で停止したいのでdeferで処理)
defer driver.Stop()
if err != nil {
log.Fatal(err)
}
//NewPage()でDriverに対応したページを返す。(今回はChrome)
page, err := driver.NewPage()
//Navigate()の引数にURLを渡し、ページの遷移を行う
err = page.Navigate("https://golang.org/")
//Screenshot()で開いているページのスクリーンショットを撮る。保存名は引数で指定。(保存場所も相対パスor絶対パスで指定可能)
page.Screenshot("Go言語公式HP.png")
if err != nil {
log.Fatal(err)
}
//FindByLink() で引数に指定したaタグのテキストを検索し、Click()でクリックする
page.FindByLink("Documents").Click()
//上記のScreenshot()と同様の動き
page.Screenshot("Go言語Documents.png")
}
아래는 page.Screenshot()로 촬영한 스크린샷입니다.
Go 언어 공식 HP.png
Go 언어Documents.png
Reference
이 문제에 관하여(【Go 언어】Agouti로 Google Chrome을 자동으로 조작하기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/YuukiYamano/items/6357d3d150205fab90ce
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
$ go get github.com/sclevine/agouti
$ brew install chromedriver
사전 준비가 완료되면 브라우저를 자동 조작하는 코드를 작성합니다.
이번에는
Go 언어의 공식 페이지를 열고 Documents까지의 전환 움직임을 자동화해 봅니다.
이하, 자동 조작을 위한 코드입니다.
각각의 코드의 의미는 코멘트 아웃으로 기술하고 있습니다.
main.go
package main
import (
"log"
"github.com/sclevine/agouti"
)
func main() {
//ChromeDriverを使用するための記述
driver := agouti.ChromeDriver()
//WebDriverプロセスを開始する
err := driver.Start()
if err != nil {
log.Fatal(err)
}
//WebDriverプロセスを停止する(main関数の最後で停止したいのでdeferで処理)
defer driver.Stop()
if err != nil {
log.Fatal(err)
}
//NewPage()でDriverに対応したページを返す。(今回はChrome)
page, err := driver.NewPage()
//Navigate()の引数にURLを渡し、ページの遷移を行う
err = page.Navigate("https://golang.org/")
//Screenshot()で開いているページのスクリーンショットを撮る。保存名は引数で指定。(保存場所も相対パスor絶対パスで指定可能)
page.Screenshot("Go言語公式HP.png")
if err != nil {
log.Fatal(err)
}
//FindByLink() で引数に指定したaタグのテキストを検索し、Click()でクリックする
page.FindByLink("Documents").Click()
//上記のScreenshot()と同様の動き
page.Screenshot("Go言語Documents.png")
}
아래는 page.Screenshot()로 촬영한 스크린샷입니다.
Go 언어 공식 HP.png
Go 언어Documents.png
Reference
이 문제에 관하여(【Go 언어】Agouti로 Google Chrome을 자동으로 조작하기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/YuukiYamano/items/6357d3d150205fab90ce텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)