2023-05-12 14:18:37 +09:00
|
|
|
|
package main
|
|
|
|
|
|
|
|
|
|
import (
|
|
|
|
|
"os"
|
|
|
|
|
"fmt"
|
|
|
|
|
"net/http"
|
|
|
|
|
"io"
|
2023-06-23 12:48:13 +09:00
|
|
|
|
"strings"
|
2023-05-12 14:18:37 +09:00
|
|
|
|
)
|
|
|
|
|
|
2023-06-27 13:48:35 +09:00
|
|
|
|
// URLでパラメートル(?、=等)がある場合
|
2023-06-23 12:48:13 +09:00
|
|
|
|
func stripurl (url string) string {
|
|
|
|
|
res := strings.ReplaceAll(url, "?", "")
|
|
|
|
|
res = strings.ReplaceAll(res, "=", "")
|
|
|
|
|
return res
|
|
|
|
|
}
|
|
|
|
|
|
2023-05-12 14:18:37 +09:00
|
|
|
|
func getpage (url string, path string) {
|
2023-06-27 13:48:35 +09:00
|
|
|
|
// ページを読み込む
|
2023-05-12 14:18:37 +09:00
|
|
|
|
curl, err := http.Get(url)
|
|
|
|
|
if err != nil {
|
|
|
|
|
fmt.Println("CURLエラー:", err)
|
|
|
|
|
return
|
|
|
|
|
}
|
2023-06-27 13:48:35 +09:00
|
|
|
|
defer curl.Body.Close() // ソフトの終了する時に実行する
|
2023-05-12 14:18:37 +09:00
|
|
|
|
|
2023-06-27 13:48:35 +09:00
|
|
|
|
// ページの内容を読み込む
|
2023-05-12 14:18:37 +09:00
|
|
|
|
body, err2 := io.ReadAll(curl.Body)
|
|
|
|
|
if err2 != nil {
|
2023-05-12 16:34:02 +09:00
|
|
|
|
fmt.Println("読込エラー:", err2)
|
2023-05-12 14:18:37 +09:00
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
2023-06-27 13:48:35 +09:00
|
|
|
|
// 空index.htmlファイルを創作する
|
2023-05-12 14:18:37 +09:00
|
|
|
|
fn, err3 := os.Create(path + "/index.html")
|
|
|
|
|
if err3 != nil {
|
|
|
|
|
fmt.Println("ファイルの創作エラー:", err3)
|
|
|
|
|
return
|
|
|
|
|
}
|
2023-06-27 13:48:35 +09:00
|
|
|
|
defer fn.Close() // ソフトの終了する時に実行する
|
2023-05-12 14:18:37 +09:00
|
|
|
|
|
2023-06-27 13:48:35 +09:00
|
|
|
|
// あのindex.htmlファイルに内容をそのまま書き込む
|
2023-05-12 14:18:37 +09:00
|
|
|
|
_, err4 := fn.WriteString(string(body))
|
|
|
|
|
if err4 != nil {
|
|
|
|
|
fmt.Println("ファイル書込エラー:", err4)
|
|
|
|
|
}
|
|
|
|
|
}
|