Rubyと筋肉とギターとわたし

筋トレが仕事です

ruby

【Selenium】location_once_scrolled_into_viewでelement not interactableが発生したときの対処方法

どうもてぃ。 自社開発でseleniumをよく使うのですが、とあるサイトをクローリングしているときに出くわしたエラーを力技で解決したので備忘録として残します。 環境 wsl2 ruby 3.1.2p20 Google Chrome 109.0.5414.74 (wslへinstallしたもの) コード require…

【docker】alpine ruby imageでgccが入っているのにstdio.h: No such file or directoryになる

どうもてぃ。お久しぶりです。 今日も解決記事です。 ゆっくりしていってね。 環境 ruby 3.0.0 (alpine image) PostgreSQL v12 (alpine image) rails 6.1.4 Docker version 20.10.2, build 20.10.2-0ubuntu1~18.04.2 docker-compose version 1.27.4, build 4…

【Vim】rails(ruby)でvim-lspを導入するとnokogiriで怒られる

どうもてぃ。 最近vimのneocompleteとneocomplcacheのサポートが終わってることを知り、ちょうどいい機会だったのでlspに移行しようとした際にハマったので備忘録として。 lspの導入 lspとは…という説明はいろんなところでなされてるためここでは割愛します…

【備忘録】asdf install rubyが出来ない時の対処法

どうもてぃ。 バージョン管理でasdfを使っているのですが、最新バージョンの言語をとってこようとした際にエラーになったので対処法を書いときます。 TL; DR $ asdf plugin-update ruby $ asdf install ruby 2.6.6 対処法はissueを探す 同じようなこと起きて…

【Rails】helperで環境変数を使いたい場合

どうもてぃです。 備忘録として残しておきます。 環境変数を設定し、クライアント側で表示するものを変えたいとPMから要望が合ったので、その要件を満たすために実装しました。 実装したとはいっても、そんな大したことはやっていないですが。 実行環境 Ruby…

【Ruby】スクレイピングに精度を求めるならNokogiriではなくSeleniumだ

どうもてぃです。 とある巨大ECサイト(通称熱帯雨林)をスクレイピングして遊んでいます。 今回は nokogiri で問題が発生したので記事にしました。 nokogiriのスクレイピング精度はあんまり良くないのを実体験で痛感しましたね。 environment Ubuntu 16.04.…

【スクレイピング】HerokuでSelenium::WebDriver::Error::SessionNotCreatedError: session not created from tab crashed

あけましておめでとうございます。 どうもてぃです。 HerokuでSeleniumを使ったスクレイピングをした際にエラーが不規則に出たので共有します。 環境 Ubuntu 16.04.5 LTS(elementary OS 0.4.1 Loki) Ruby 2.5.0 Rails 5.2.1 参考 公式のリポジトリをまず参…

【Ruby】スクレイピングをするときはUserAgentを設定しましょう

どうもてぃです。 現在業務でスクレイピングをしたデータをシステム上でよしなにやって、楽しく過ごしています。 今回とある、巨大なECサイト(俗称:熱帯雨林)をスクレイピングした際にエラーに見舞われたので、解決策を残しておこうと思います。 実行環境…

【備忘録】link_toでhtmlタグを渡したいとき

最近Railsの開発をはじめました。 どうもてぃです。 例えば <i class="fas fa-user">のアイコンに対して link_to を使ってリンク化したいとき、ありますよね。 そんな時は、 link_to(<path>, <styleとか>) do を使う。 前の会社でRailsをガシガシやってた時に使ったので、そういやそんなのあったなー</styleとか></path></i>…

MySQLエラーでRailsサーバーが全然起動しなかったんだよ

ひっさしぶりに1からRailsの環境を作ってみました。 すると、いろいろつまずきます。 最初に躓いたのがMySQLでした。 Can't connect to local MySQL server through socket '/tmp/mysql.sock' (13) (Mysql2::Error) $ rails s => Booting Puma => Rails 5.0.…

バイナリーで保存したexcelデータをRubyXLを使って編集する

新年明けましておめでとうございます。 ブログ開設して初の技術記事です\(^o^)/ 技術記事を書くときは特に業務でやったことの復習と備忘録代わりに書いてます。 今回も同じで、最近久しぶりに触ったRubyXLというgemに関して書いていきたいと思います。 Rub…