Mercurial > mercurial > hgweb_rsearcher.cgi
comparison go/client.go @ 14:c1dc1fcee7fe
print zoom.
author | pyon@macmini |
---|---|
date | Sun, 09 Dec 2018 14:38:15 +0900 |
parents | f5ffc34f045a |
children |
comparison
equal
deleted
inserted
replaced
13:f5ffc34f045a | 14:c1dc1fcee7fe |
---|---|
1 /* | 1 /* |
2 client.go : client-program. | 2 client.go : client-program. |
3 Version : 1.3a | 3 Version : 1.4 |
4 Last Change: 2018-11-14 水 16:58:29. | 4 Last Change: 2018-12-05 水 08:29:02. |
5 | 5 |
6 install to: rsearcher_root/ | 6 install to: rsearcher_root/ |
7 | 7 |
8 rsearcher_root/client.exe | 8 rsearcher_root/client.exe |
9 + grsearcher.exe | 9 + grsearcher.exe |
32 "fmt" | 32 "fmt" |
33 "io" | 33 "io" |
34 "io/ioutil" | 34 "io/ioutil" |
35 "log" | 35 "log" |
36 "net/http" | 36 "net/http" |
37 "net/url" | |
37 "os" | 38 "os" |
38 "path/filepath" | 39 "path/filepath" |
39 "regexp" | 40 "regexp" |
40 "time" | 41 "time" |
41 ) | 42 ) |
42 | 43 |
43 var version string | 44 var version string |
44 | 45 |
45 func init() { | 46 func init() { |
46 version = "1.3a" // manual.pdf version | 47 version = "1.4" // image query version |
47 } | 48 } |
48 | 49 |
49 func main() { | 50 func main() { |
50 var upgrade = flag.Bool( "r", false, "get new release" ) // get grsearcher.exe, crypto.exe client.exe manual.pdf | 51 var upgrade = flag.Bool( "r", false, "get new release" ) // get grsearcher.exe, crypto.exe client.exe manual.pdf |
51 var update = flag.Bool( "u", false, "get new DBs" ) // get auth.db, hhs.db, index.db(14,28) | 52 var update = flag.Bool( "u", false, "get new DBs" ) // get auth.db, hhs.db, index.db(14,28) |
109 os.Exit( 1 ) | 110 os.Exit( 1 ) |
110 } | 111 } |
111 host := flag.Args()[0] | 112 host := flag.Args()[0] |
112 | 113 |
113 fmt.Print( "Getting client.exe..." ) | 114 fmt.Print( "Getting client.exe..." ) |
114 if _, err := get_file( host, "/release/client.exe", "client1.exe" ); err != nil { | 115 if _, err := get_file( host, "/release/client.exe", "", "client1.exe" ); err != nil { |
115 log.Fatal( err ) | 116 log.Fatal( err ) |
116 } | 117 } |
117 fmt.Print( "Getting crypto.exe..." ) | 118 fmt.Print( "Getting crypto.exe..." ) |
118 if _, err := get_file( host, "/release/crypto.exe", "crypto.exe" ); err != nil { | 119 if _, err := get_file( host, "/release/crypto.exe", "", "crypto.exe" ); err != nil { |
119 log.Fatal( err ) | 120 log.Fatal( err ) |
120 } | 121 } |
121 fmt.Print( "Getting grsearcher.exe..." ) | 122 fmt.Print( "Getting grsearcher.exe..." ) |
122 if _, err := get_file( host, "/release/grsearcher.exe", "grsearcher.exe" ); err != nil { | 123 if _, err := get_file( host, "/release/grsearcher.exe", "", "grsearcher.exe" ); err != nil { |
123 log.Fatal( err ) | 124 log.Fatal( err ) |
124 } | 125 } |
125 fmt.Print( "Getting manual.pdf..." ) | 126 fmt.Print( "Getting manual.pdf..." ) |
126 if _, err := get_file( host, "/release/manual.pdf", "manual.pdf" ); err != nil { | 127 if _, err := get_file( host, "/release/manual.pdf", "", "manual.pdf" ); err != nil { |
127 log.Fatal( err ) | 128 log.Fatal( err ) |
128 } | 129 } |
129 | 130 |
130 if *cnttime { | 131 if *cnttime { |
131 fmt.Println( "---", time.Now().Sub( st ) ) | 132 fmt.Println( "---", time.Now().Sub( st ) ) |
139 fmt.Fprint( os.Stderr, "bad remote host.\n" ) | 140 fmt.Fprint( os.Stderr, "bad remote host.\n" ) |
140 os.Exit( 1 ) | 141 os.Exit( 1 ) |
141 } | 142 } |
142 fmt.Print( "Getting auth.db..." ) | 143 fmt.Print( "Getting auth.db..." ) |
143 host := flag.Args()[0] | 144 host := flag.Args()[0] |
144 if _, err := get_file( host, "/db/auth.db", "auth.db" ); err != nil { | 145 if _, err := get_file( host, "/db/auth.db", "", "auth.db" ); err != nil { |
145 log.Fatal( err ) | 146 log.Fatal( err ) |
146 } | 147 } |
147 fmt.Print( "Getting hhs.db..." ) | 148 fmt.Print( "Getting hhs.db..." ) |
148 if _, err := get_file( host, "/db/hhs.db", "hhs.db" ); err != nil { | 149 if _, err := get_file( host, "/db/hhs.db", "", "hhs.db" ); err != nil { |
149 log.Fatal( err ) | 150 log.Fatal( err ) |
150 } | 151 } |
151 | 152 |
152 if time.Now().Day() % 14 == 0 { | 153 if time.Now().Day() % 14 == 0 { |
153 fmt.Print( "Getting index.db..." ) | 154 fmt.Print( "Getting index.db..." ) |
154 if _, err := get_file( host, "/db/index.db", "index.db" ); err != nil { | 155 if _, err := get_file( host, "/db/index.db", "", "index.db" ); err != nil { |
155 log.Fatal( err ) | 156 log.Fatal( err ) |
156 } | 157 } |
157 } | 158 } |
158 | 159 |
159 if *cnttime { | 160 if *cnttime { |
180 if len( m ) == 0 { | 181 if len( m ) == 0 { |
181 fmt.Fprint( os.Stderr, "bad hno.\n" ) | 182 fmt.Fprint( os.Stderr, "bad hno.\n" ) |
182 os.Exit( 1 ) | 183 os.Exit( 1 ) |
183 } | 184 } |
184 | 185 |
186 v := url.Values{} | |
187 v.Set( "q", "12345" ) | |
188 q := "" | |
189 | |
185 rfile := "/images/" + d + "/" + h + ".tgz" | 190 rfile := "/images/" + d + "/" + h + ".tgz" |
186 fmt.Print( "Getting", rfile ) | 191 fmt.Print( "Getting ", rfile ) |
187 b, err := get_file( host, rfile, "" ) | 192 b, err := get_file( host, rfile, q, "" ) |
188 if err != nil { | 193 if err != nil { |
189 log.Fatal( err ) | 194 log.Fatal( err ) |
190 } | 195 } |
191 if err := untgz_images( d, b ); err != nil { | 196 if err := untgz_images( d, b ); err != nil { |
192 log.Fatal( err ) | 197 log.Fatal( err ) |
213 defer res.Body.Close() | 218 defer res.Body.Close() |
214 return ioutil.ReadAll( res.Body ) | 219 return ioutil.ReadAll( res.Body ) |
215 } | 220 } |
216 | 221 |
217 // HTTP GET | 222 // HTTP GET |
218 func get_file( host, rfile, lfile string ) ( []byte, error ) { | 223 func get_file( host, rfile, query, lfile string ) ( []byte, error ) { |
219 res, err := http.Get( "http://" + host + "/" + rfile ) | 224 res, err := http.Get( "http://" + host + "/" + rfile ) |
220 if err != nil { | 225 if err != nil { |
221 return nil, err | 226 return nil, err |
222 } | 227 } |
223 fmt.Println( "\t[" + res.Status + "]" ) | 228 fmt.Println( "\t[" + res.Status + "]" ) |