19日に更新してた

アフィリエイトはないよ

golang で agouti をなんとか入れた

「新しいプログラミング言語を身につけたい」と思いつつ、ちょっと手を付けては放り出してます。どうせプログラマーワナビーだから気分良く書けるかと心が折れないことが大事とばかりにとっかえひっかえしても、公式のオンラインチュートリアルだと金掛からないからいくらでも手を出せます。
python も初心者なのにどうなんだ?」という想いもございますが仕事じゃないから気楽なものです。

とりあえず、欲しいプログラムが時間をかければなんとか書けるくらいだとその恩恵を実感することはあまりないのでしょうけれど「はやい python」が欲しいので、難易度があまり高くないとどこかに出ていた golang に手を出してみました。*1

とりあえず、前にやったことがあることを試してみるのが一番楽なので、以前 rust でやってみた a^5+b^5+c^5+d^5=e^5 をベタでやったら138秒、array に5乗の計算結果を入れてループ組んで index で array にアクセスして足し算判定してみたら1秒くらいでしたし、思ったより簡単に書けるからいいなと。*2
あんまり苦労することなくいろいろとサクサク進むのでいいなぁと思っていたのですが、Agouti を入れようとしたら

go install github.com/sclevine/agouti@latest

>>package github.com/sclevine/agouti is not a main package

となりまして、go run してみたら動きませんでした。*3

go install golang.org/x/tools/cmd/stringer@latest

>>go: downloading golang.org/x/tools v0.1.12
>>go: downloading golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f       
>>go: downloading golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4

だと問題ないみたいだから、環境設定の問題ではないみたい。

ネットでの解説は go get ばかりで試しにやってみたら go install を使えとくるし、仕方がないので go get の使い方を調べてみたらうまく行ったのでご報告。

go env -w GO111MODULE=off 

go get -v github.com/sclevine/agouti

でいいらしい。その後、GO111MODULE を再度 on にすると go run できなくなるので、agouti を使う場合は off でいかないといけないみたい。

agouti 自体は pythonselenium と変わりなく使えるのでとてもなじみがいいです。

*1:go version go1.19.1 windows/amd64

*2:両方とも go run で動かしています

*3:@v3.0.0も@v2.0もあきませんでした