Lan's note

高速HUGOブログで脱WordPress!

2020-03-06

Go言語[Golang]goqueryスクレイピングをProxy経由で行う方法

GolangのプログラムをProxy経由で行うのは簡単です。 Golangの環境変数にProxy設定を書くだけで、Proxy経由でスクレイピングなど他のサイトへのアクセスを含むプログラムを実行できます。 本記事ではスクレイピング(goquery)については割愛し、環境変数の設定方法を記しておきます。 Goの環境変数 # go env このコマンドを実行することで、Golangの環境変数を見ることができます。 ...

2020-03-03

SIMカードなし・通信サービスがありませんの対処法(Android/Essential Phone/楽天モバイル)

Andorid端末「Essential Phone」で頻繁に「SIMカードなし」「通信サービスがありません」となることからその対処法を綴っています。 本記事は進展があり次第追記していきます。 利用環境 Essential Phone 楽天モバイル 障害の症状 スマホ利用中にSIMを認識しなくなる SIMが認識されなくなるとWiFiのみの通信も不安定または切断される 障害発生時の考えられる状況 ドッカンバトルを長時間遊んでいると通信が ...

2020-02-25

【解決】HUGOのテーマをacademicに変えたらパーマリンクの濁点・半濁点に不具合が生じたので暫定的対処

解決(2020/03/05追記) /config/_default/config.toml removePathAccents = false 設定ファイルのremovePathAccentsの設定値をtrueからfalseにすることで濁点・半濁点のあるURLが正常に処理されるようになりました。 以下、解決策までの過程を書き残しておきます。 (追記ここまで) HUGOブログのテーマを最も利用されているacademicに変更したら、カテゴリページやタグページURLの日本語の濁音・半濁音がバグってしまいました ...

2019-07-26

Go言語[Golang]MariaDBに接続してTRUNCATEしINSERTする

mysqlパッケージのインストール $ go get github.com/go-sql-driver/mysql Tweet実行コード package main import ( "database/sql" _ "github.com/go-sql-driver/mysql" ) func main() { // データベースに接続する db, err := sql.Open("mysql", "DBユーザー名:DBパスワード@/DB名") if err != nil { panic(err) } defer db.Close() // テーブル空にする stmt, err := db.Prepare("TRUNCATE `テーブル名`") if err != nil { panic(err.Error()) } defer stmt.Close() _, err = stmt.Exec() // TRUNCATE実行 // テーブルにデータを挿入する stmt, err = db.Prepare("INSERT INTO `テーブル名` (`カラム名1`, `カラム名2`, `カラム ...

2019-07-20

Go言語[Golang]サイトマップからURL(loc)を取得するコード

goqueryパッケージのインストール $ go get github.com/PuerkitoBio/goquery サイトマップのURL(loc)を配列に格納する package main import ( "fmt" "github.com/PuerkitoBio/goquery" ) func main() { url := "https://lancers.work/sitemap.xml" doc, err := goquery.NewDocument(url) if err != nil { panic(err) } var link = []string{} doc.Find("loc").Each(func(_ int, s *goquery.Selection) { link = append(link, s.Text()) }) fmt.Println(link) } 実行結果 [https://lancers.work/tags/vmware/ https://lancers.work/vmware-esxi65-realtek-nic/ ・・・ https://lancers.work/pref-city-form-jquery-json/ https://lancers.work/hexo-nodejs-blog/] 解説 サイトマップファイルをスクレイピングするためgoqueryパッケージを使用 locの取得 locは複数あることが多いためEach文で回しながらsで受け取り、sのText()(URL)を取得していま ...

2019-07-20

Go言語[Golang]sliceの要素をランダムにシャッフルするコード

sliceのshuffle実行コード(スライスのランダムな並び替えコード) package main import ( "fmt" "math/rand" "time" ) func main() { a := []int{0, 1, 2 ,3, 4, 5, 6, 7, 8, 9} fmt.Println(a) // [0 1 2 3 4 5 6 7 8 9] rand.Seed(time.Now().UnixNano()) for i := range a { j := rand.Intn(i + 1) a[i], a[j] = a[j], a[i] } fmt.Println(a) // [2 6 5 7 9 8 1 4 3 0] } 解説 math/rand・timeパッケージを使用 Seedの設定 初期値ではSeedが1に固定されているため、Seedに何かしらの値を設定しないと、いつも同じ結果(今回の場合、並び替え順) ...

2019-07-16

HUGOのフルAMP化やめました

ブログ高速化を目指してHUGO+フルAMPを構築してきました。 フルAMPとは、モバイルページのみならず、PCページもAMP化することで、ブログの表示を高速化しようという試みです。 一見いいとこだらけに見えますが、下記の理由でフルAMP化をやめ、通常のレスポンシブHUGOブログに戻しました。 なお、下記の理由は当方の環境によるもの出るかもしれませんし、計測値なども掲載していませんので不確実な部分もありま ...

2019-07-07

HUGOのフルAMPで究極のブログ爆速化 その5~最適なアドセンスサイズとコード~

今回はフルAMPのHUGOブログにおける最適なアドセンスのサイズとコードを紹介します。 フルAMPのブログの場合テンプレートにもよりますが、PCページでアドセンス広告の表示がきれいに表示されない、または、表示されないケースがあります。 そこでアドセンスに多く広告出稿されているバナーサイズを網羅できるアドセンスコードを検証してみました。 アドセンス広告ユニットの選択 広告ユニットは、ディスプレイ広 ...

2019-06-21

HUGOのセクションの構造・レイアウト・タイトル・_index.mdを学ぶ

HUGOブログのサブディレクトリを使って記事をうまく分類してみます。 HUGOではサブディレクトリ配下のことをセクションと呼びます。 セクション配下にはメイン記事とは色合いの違う記事(カテゴリ別記事)をまとめておくと何かと都合がいいです。 例えば、ブログのメイン記事はGo言語だけど、日々の雑記も書きたい場合、 https://hogehoge.com/メイン記事/ https://hogehoge.com/ ...