Advertisement
Guest User

Untitled

a guest
Jul 15th, 2016
136
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.30 KB | None | 0 0
  1. Dim com.google.api.services.samples.youtube.cmdline.youtube_cmdline_search_sample As package
  2. Imports com.google.api.client.googleapis.json.GoogleJsonResponseException
  3. Imports com.google.api.client.http.HttpRequest
  4. Imports com.google.api.client.http.HttpRequestInitializer
  5. Imports com.google.api.client.http.HttpTransport
  6. Imports com.google.api.client.http.javanet.NetHttpTransport
  7. Imports com.google.api.client.json.JsonFactory
  8. Imports com.google.api.client.json.jackson2.JacksonFactory
  9. Imports com.google.api.services.youtube.YouTube
  10. Imports com.google.api.services.youtube.model.ResourceId
  11. Imports com.google.api.services.youtube.model.SearchListResponse
  12. Imports com.google.api.services.youtube.model.SearchResult
  13. Imports com.google.api.services.youtube.model.Thumbnail
  14. Imports java.io.BufferedReader
  15. Imports java.io.IOException
  16. Imports java.io.InputStream
  17. Imports java.io.InputStreamReader
  18. Imports java.util.Iterator
  19. Imports java.util.List
  20. Imports java.util.Properties
  21. Public Class Search
  22.  
  23. Private Shared PROPERTIES_FILENAME As String = "youtube.properties"
  24.  
  25. Private Shared HTTP_TRANSPORT As HttpTransport = New NetHttpTransport
  26.  
  27. Private Shared JSON_FACTORY As JsonFactory = New JacksonFactory
  28.  
  29. Private Shared NUMBER_OF_VIDEOS_RETURNED As Long = 25
  30.  
  31. Private Shared youtube As YouTube
  32.  
  33. Public Shared Sub main(ByVal args() As String)
  34. ' Read the developer key from youtube.properties
  35. Dim properties As Properties = New Properties
  36. Try
  37. Dim in As InputStream = Search.class.getResourceAsStream(("/" + PROPERTIES_FILENAME))
  38. properties.load(in)
  39. Catch e As IOException
  40. System.err.println(("There was an error reading " _
  41. + (PROPERTIES_FILENAME + (": " _
  42. + (e.getCause + (" : " + e.getMessage))))))
  43. System.exit(1)
  44. End Try
  45.  
  46. Try
  47. ('TODO: Warning!!!! NULL EXPRESSION DETECTED...
  48. + setApplicationName("youtube-cmdline-search-sample").build)
  49. ' Get query term from user.
  50. Dim queryTerm As String = Search.getInputQuery
  51. Dim search As YouTube.Search.List = youtube.search.list("id,snippet")
  52. Dim apiKey As String = properties.getProperty("youtube.apikey")
  53. search.setKey(apiKey)
  54. search.setQ(queryTerm)
  55. search.setType("video")
  56. search.setFields("items(id/kind,id/videoId,snippet/title,snippet/thumbnails/default/url)")
  57. search.setMaxResults(NUMBER_OF_VIDEOS_RETURNED)
  58. Dim searchResponse As SearchListResponse = search.execute
  59. Dim searchResultList As List(Of SearchResult) = searchResponse.getItems
  60. If (Not (searchResultList) Is Nothing) Then
  61. Search.prettyPrint(searchResultList.iterator, queryTerm)
  62. End If
  63.  
  64. Catch e As GoogleJsonResponseException
  65. System.err.println(("There was a service error: " _
  66. + (e.getDetails.getCode + (" : " + e.getDetails.getMessage))))
  67. Catch e As IOException
  68. System.err.println(("There was an IO error: " _
  69. + (e.getCause + (" : " + e.getMessage))))
  70. Catch t As Throwable
  71. t.printStackTrace
  72. End Try
  73.  
  74. End Sub
  75.  
  76. Private Shared Function getInputQuery() As String
  77. Dim inputQuery As String = ""
  78. System.out.print("Please enter a search term: ")
  79. Dim bReader As BufferedReader = New BufferedReader(New InputStreamReader(System.in))
  80. inputQuery = bReader.readLine
  81. If (inputQuery.length < 1) Then
  82. ' If nothing is entered, defaults to "YouTube Developers Live."
  83. inputQuery = "YouTube Developers Live"
  84. End If
  85.  
  86. Return inputQuery
  87. End Function
  88.  
  89. Private Shared Sub prettyPrint(ByVal iteratorSearchResults As Iterator(Of SearchResult), ByVal query As String)
  90. System.out.println(""& vbLf&"=============================================================")
  91. System.out.println((" First " _
  92. + (NUMBER_OF_VIDEOS_RETURNED + " videos for search on \"""" + query + ")), ".")
  93. System.out.println("============================================================="& vbLf)
  94. If Not iteratorSearchResults.hasNext Then
  95. System.out.println(" There aren't any results for your query.")
  96. End If
  97.  
  98.  
  99. While iteratorSearchResults.hasNext
  100. Dim singleVideo As SearchResult = iteratorSearchResults.next
  101. Dim rId As ResourceId = singleVideo.getId
  102. ' Double checks the kind is video.
  103. If rId.getKind.equals("youtube#video") Then
  104. Dim thumbnail As Thumbnail = singleVideo.getSnippet.getThumbnails.get("default")
  105. System.out.println((" Video Id" + rId.getVideoId))
  106. System.out.println((" Title: " + singleVideo.getSnippet.getTitle))
  107. System.out.println((" Thumbnail: " + thumbnail.getUrl))
  108. System.out.println(""& vbLf&"-------------------------------------------------------------"& vbLf)
  109. End If
  110.  
  111.  
  112. End While
  113.  
  114. End Sub
  115. End Class
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement