teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

3

書き換えました、すみませんでした

2020/03/02 13:42

投稿

coca0127
coca0127

スコア10

title CHANGED
File without changes
body CHANGED
@@ -1,3 +1,4 @@
1
+ ```
1
2
  import requests
2
3
  import json
3
4
 
@@ -5,17 +6,24 @@
5
6
  apireq = requests.get(apiurl)
6
7
  apidata = json.loads(apireq.text)
7
8
  apiday = apidata['pages'][0]['date']
9
+ ```
8
10
 
9
11
  スクレイピングで取得した動画URLをwebAPIで叩きapidayを取得したいのですが、
10
12
  apidayで指定している要素が存在しないケースでIndexError: list index out of rangeのエラーが出てしまいます。
11
13
 
12
14
  apiday = apidata['pages'][0]['date']の部分をlenで判定して
15
+ ```
13
16
  if len(apidata['pages'][0]['date']) == 0:
14
17
  print("error")
18
+ ```
15
19
  のように書き換えても同じエラーが出ます。
16
20
  書き方を間違えているのでしょうか・・・?(python初心者です)
17
21
 
18
22
  apiの中身は以下のようになっていて、
23
+ ```
19
24
  {"url":"hoge","pages":[{"title":"hogehoge","date":"2020/02/24 23:30:55"}]}
25
+ ```
20
26
  要素が存在しない時は以下のようになります。
27
+ ```
21
- {"url":"hoge","pages":[]}
28
+ {"url":"hoge","pages":[]}
29
+ ```

2

誤字

2020/03/02 13:42

投稿

coca0127
coca0127

スコア10

title CHANGED
File without changes
body CHANGED
@@ -10,7 +10,7 @@
10
10
  apidayで指定している要素が存在しないケースでIndexError: list index out of rangeのエラーが出てしまいます。
11
11
 
12
12
  apiday = apidata['pages'][0]['date']の部分をlenで判定して
13
- if len(apidata['pages'][0]['create_date_date']) == 0:
13
+ if len(apidata['pages'][0]['date']) == 0:
14
14
  print("error")
15
15
  のように書き換えても同じエラーが出ます。
16
16
  書き方を間違えているのでしょうか・・・?(python初心者です)

1

コード修正

2020/03/01 14:13

投稿

coca0127
coca0127

スコア10

title CHANGED
File without changes
body CHANGED
@@ -16,6 +16,6 @@
16
16
  書き方を間違えているのでしょうか・・・?(python初心者です)
17
17
 
18
18
  apiの中身は以下のようになっていて、
19
- {"url":"hoge","pages":[{"title":"hogehoge","create_date_date":"2020/02/24 23:30:55"}]}
19
+ {"url":"hoge","pages":[{"title":"hogehoge","date":"2020/02/24 23:30:55"}]}
20
20
  要素が存在しない時は以下のようになります。
21
21
  {"url":"hoge","pages":[]}