質問編集履歴

1

分からないところだけを書きました

2018/11/10 08:26

投稿

44shito
44shito

スコア14

test CHANGED
@@ -1 +1 @@
1
- JavaでHTMLを取得し、
1
+ JavaでHTMLを取得
test CHANGED
@@ -1,81 +1,37 @@
1
- javaのプログラミング
1
+ JavaでHTMLを取得について
2
-
3
- yahooの今日の天気「曇りのち晴れなど」のデータを取得したいのです。
4
-
5
- 現状のプログラムでは、タイトルを取得するようになっています。
6
-
7
- どうすれば天気の情報を取得できるのか教えて下さい。
8
-
9
- 宜しくお願い致します。
10
2
 
11
3
 
12
4
 
13
- ```import java.io.BufferedReader;
14
-
15
- import java.io.IOException;
16
-
17
- import java.io.InputStream;
18
-
19
- import java.io.InputStreamReader;
20
-
21
- import java.net.HttpURLConnection;
5
+ javaでyahooの天気予報から今日の天気を取得しようとしてます。
22
-
23
- import java.net.URL;
24
-
25
- import java.util.regex.Matcher;
26
-
27
- import java.util.regex.Pattern;
28
6
 
29
7
 
30
8
 
9
+ 下記のJavaのプログラムでマッチした部分を取得し、出力すると
31
10
 
11
+ <p><img src="https://s.yimg.jp/images/weather/general/forecast/size75/clouds_sun_af.gif" border="0" alt="曇後晴">曇後晴</p>
32
12
 
33
- public class weth {
34
-
35
- public static void main(String[] args) throws IOException {
36
-
37
- URL url = new URL("https://weather.yahoo.co.jp/weather/jp/34/6710.html");
38
-
39
- HttpURLConnection httpConn = (HttpURLConnection) url.openConnection();
40
-
41
- InputStream in = httpConn.getInputStream();
42
-
43
- BufferedReader r = new BufferedReader(
44
-
45
- new InputStreamReader(in,"UTF-8"));
46
-
47
- for (;;) {
13
+ のように表示されます。
48
-
49
- String line = r.readLine();
50
-
51
- if (line == null) {
52
-
53
- break;
54
-
55
- }
56
14
 
57
15
 
58
16
 
59
- Pattern title_pattern1 = Pattern.compile("<title>([^<]+)</title>",Pattern.CASE_INSENSITIVE);
60
-
61
- Matcher matcher1 = title_pattern1.matcher(line);//response.toString());
62
-
63
- if(matcher1.find() ) {
64
-
65
- System.out.println(matcher1.group(1));
17
+ HTMLタグの中の『曇後晴』だけ取得し、表示するやり方を教えてください。
66
-
67
- }
68
18
 
69
19
 
70
20
 
71
- //System.out.println("\r\n"+line);
21
+ ```ここ
72
22
 
73
- }
23
+ [javaの一部]
74
24
 
75
- }
25
+ Pattern title_pattern1 = Pattern.compile("<p>([^<]+)</p>",Pattern.CASE_INSENSITIVE);
76
26
 
77
- }
27
+ Matcher matcher1 = title_pattern1.matcher(line);
78
28
 
79
29
 
80
30
 
31
+ [HTMLの一部]
32
+
33
+ <p><img src="https://s.yimg.jp/images/weather/general/forecast/size75/clouds_sun_af.gif" border="0" alt="曇後晴">曇後晴</p>
34
+
35
+ ード
36
+
81
37
  ```