質問編集履歴

3

コードの修正

2017/11/15 04:26

投稿

penguin_mask
penguin_mask

スコア14

test CHANGED
File without changes
test CHANGED
@@ -36,7 +36,7 @@
36
36
 
37
37
  "contentDetails": {
38
38
 
39
- "duration": "PT1S", <-- ここ
39
+ "duration": "PT5M9S", <-- ここ
40
40
 
41
41
  "dimension": "2d",
42
42
 

2

コードの追加

2017/11/15 04:25

投稿

penguin_mask
penguin_mask

スコア14

test CHANGED
File without changes
test CHANGED
@@ -1,4 +1,58 @@
1
1
  rubyでYoutube Data api から動画の再生時間をとってくるコードを書きました
2
+
3
+ Youtube Data apiでは
4
+
5
+ https://www.googleapis.com/youtube/v3/videos?id=動画URLの末尾11桁&key=APIキー&part=snippet,contentDetails,statistics,status
6
+
7
+ にアクセスすると動画の再生時間やタイトル、視聴回数などがJSON方式で取得できます
8
+
9
+ ```ruby
10
+
11
+ def get_duration(id)
12
+
13
+ require 'net/http'
14
+
15
+ uri = URI.parse('https://www.googleapis.com/youtube/v3/videos?id='+ id +
16
+
17
+ '&key=(私のAPIキー)&part=snippet,
18
+
19
+ contentDetails,statistics,status')
20
+
21
+ json = Net::HTTP.get(uri)
22
+
23
+ videoInfo = JSON.parse(json)
24
+
25
+ duration = videoInfo['items'][0]['contentDetails']['duration']
26
+
27
+ return duration
28
+
29
+ end
30
+
31
+ ```
32
+
33
+ ```json
34
+
35
+ --省略--
36
+
37
+ "contentDetails": {
38
+
39
+ "duration": "PT1S", <-- ここ
40
+
41
+ "dimension": "2d",
42
+
43
+ "definition": "hd",
44
+
45
+ "caption": "false",
46
+
47
+ "licensedContent": true,
48
+
49
+ "projection": "rectangular"
50
+
51
+ },
52
+
53
+ --省略--
54
+
55
+ ```
2
56
 
3
57
  5分9秒の動画では”PT5M9S”という文字列が得られました
4
58
 

1

誤字の修正

2017/11/15 04:22

投稿

penguin_mask
penguin_mask

スコア14

test CHANGED
File without changes
test CHANGED
@@ -8,4 +8,4 @@
8
8
 
9
9
  更にYouTubeで一番短いと言われる動画の再生時間をとってくると"PT1S"という文字列が得られました
10
10
 
11
- これらのコードを数値型にするにはどうすればいいでしょうか?
11
+ これらの文字列を数値型にするにはどうすればいいでしょうか?