Build Status

YoutubeEngine

一个使用 ReactiveCocoa API 的 Youtube 库。 可以通过一次调用轻松访问视频和频道所需的各个部分。

截图

YoutubeEngine

示例

要运行示例项目,请克隆仓库,然后运行 carthage checkout

let engine = Engine(authorization: .key(YOUR_API_KEY))
let request: SearchRequest = .search(withTerm: "VEVO",
                                     requiredVideoParts: [.statistics, .contentDetails],
                                     requiredChannelParts: [.statistics],
                                     requiredPlaylistParts: [.snippet],
                                     limit: 20)

engine.search(request)
    .startWithResult { result in
        guard case .success(let page) = result else {
            return
        }
        let formattedItems = page.items.enumerated().map { "[\($0)] = \($1)" }
        print("VEVO:\n\(formattedItems.joined(separator: "\n"))")
    }

要求

支持 Swift 5

安装

Cocoapods

pod "YoutubeEngine", :git => 'https://github.com/Igor-Palaguta/YoutubeEngine', :tag => '0.7.0'

Carthage

github "Igor-Palaguta/YoutubeEngine" ~> 0.7.0

SPM

.package(url: "https://github.com/Igor-Palaguta/YoutubeEngine", .upToNextMinor(from: "0.7.0"))

已实现的 API

  1. 搜索列表 通过关键字、来自频道的视频、相关视频

  2. 频道列表 通过标识符或我的频道

  3. 视频列表 通过标识符或热门视频

  4. 播放列表项列表 通过标识符或来自播放列表

作者

Igor Palaguta, igor.palaguta@gmail.com

许可

YoutubeEngine 在 MIT 许可下可用。 有关更多信息,请参见 LICENSE 文件。