回答編集履歴

3

別の実装追加

2019/12/08 15:10

投稿

shiracamus
shiracamus

スコア5406

test CHANGED
@@ -17,3 +17,85 @@
17
17
  news.set(" " + item.string)
18
18
 
19
19
  ```
20
+
21
+
22
+
23
+ あるいは、
24
+
25
+
26
+
27
+ ```python
28
+
29
+ from tkinter import *
30
+
31
+ import urllib.request
32
+
33
+ from bs4 import BeautifulSoup
34
+
35
+ import threading
36
+
37
+ import time
38
+
39
+
40
+
41
+ NewsURL = "https://news.yahoo.co.jp/pickup/rss.xml"
42
+
43
+ def get_news():
44
+
45
+ response = urllib.request.urlopen(NewsURL)
46
+
47
+ html = BeautifulSoup(response, 'html.parser')
48
+
49
+ topics = html.find_all("title")
50
+
51
+ link = html.find_all("link")
52
+
53
+ for i, item in enumerate(topics):
54
+
55
+ if i > 5:
56
+
57
+ break
58
+
59
+ if i == 0:
60
+
61
+ values[i].set(item.string)
62
+
63
+ else:
64
+
65
+ values[i].set(" " + item.string)
66
+
67
+ time.sleep(3600)
68
+
69
+
70
+
71
+ flg = threading.Event()
72
+
73
+ flg.set()
74
+
75
+ root = Tk()
76
+
77
+ root.attributes("-fullscreen", True)
78
+
79
+
80
+
81
+ values = [StringVar() for _ in range(6)]
82
+
83
+ values[0].set("")
84
+
85
+ for value in values[1:]:
86
+
87
+ value.set("取得中")
88
+
89
+ Label(root, textvariable=value).pack()
90
+
91
+
92
+
93
+ t2 = threading.Thread(target=get_news)
94
+
95
+ t2.start()
96
+
97
+
98
+
99
+ root.mainloop()
100
+
101
+ ```

2

処理訂正

2019/12/08 15:10

投稿

shiracamus
shiracamus

スコア5406

test CHANGED
@@ -12,6 +12,8 @@
12
12
 
13
13
  else:
14
14
 
15
+ news = (news1, news2, news3, news4, news5)[i]
16
+
15
- news1.set(" {0}".format(item.string))
17
+ news.set(" " + item.string)
16
18
 
17
19
  ```

1

処理変更

2019/12/08 14:56

投稿

shiracamus
shiracamus

スコア5406

test CHANGED
@@ -1,6 +1,16 @@
1
1
  ```python
2
2
 
3
- if i in (1, 2, 3, 4, 5):
3
+ for i, item in enumerate(topics):
4
+
5
+ if i > 5:
6
+
7
+ break
8
+
9
+ if i == 0:
10
+
11
+ news_title.set(item.string)
12
+
13
+ else:
4
14
 
5
15
  news1.set(" {0}".format(item.string))
6
16