質問編集履歴

1

発生している問題で「全部」を削除、追記以降を追加

2021/06/20 14:30

投稿

tomomonX
tomomonX

スコア28

test CHANGED
File without changes
test CHANGED
@@ -12,7 +12,7 @@
12
12
 
13
13
  ### 発生している問題
14
14
 
15
- 該当ソースコードで全部
15
+ 該当ソースコードで~~全部~~
16
16
 
17
17
  ```python
18
18
 
@@ -145,3 +145,65 @@
145
145
  return None
146
146
 
147
147
  ```
148
+
149
+
150
+
151
+ #追記
152
+
153
+ 全部Noneで返されているかと思っていたのですが、勘違いでSQLiteに出力されていました。
154
+
155
+ #改めてためしたこと
156
+
157
+ 下記を試して、try文が実行されていることが確認できました。
158
+
159
+ ただ、SQLiteにはなにも出力されていないように見えます。
160
+
161
+ https://bitop.hatenablog.com/entry/2019/04/09/060131では表が確認できるのに、
162
+
163
+ 私の実行結果では確認できません。
164
+
165
+ ```
166
+
167
+ def get_brand(code):
168
+
169
+ url = 'https://kabutan.jp/stock/?code={}'.format(code)
170
+
171
+
172
+
173
+ q = PyQuery(url)
174
+
175
+
176
+
177
+ if len(q.find('div.company_block')) == 0:
178
+
179
+ return None
180
+
181
+
182
+
183
+ try:
184
+
185
+ name = q.find('div.company_block > h3').text()
186
+
187
+ code_short_name = q.find('#stockinfo_i1 > div.si_i1_1 > h2').text()
188
+
189
+ short_name = code_short_name[code_short_name.find(" ") + 1:]
190
+
191
+ market = q.find('span.market').text()
192
+
193
+ unit_str = q.find('#kobetsu_left > table:nth-child(4) > tbody > tr:nth-child(6) > td').text()
194
+
195
+ unit = int(unit_str.split()[0].replace(',', ''))
196
+
197
+ sector = q.find('#stockinfo_i2 > div > a').text()
198
+
199
+ print(q.find('div.company_block > h3').text())#tryが実行されているかここで確認
200
+
201
+ except (ValueError, IndexError):
202
+
203
+ return None
204
+
205
+
206
+
207
+ return code, name, short_name, market, unit, sector
208
+
209
+ ```