NewPipeExtractor

TeamNewPipeGPL-3.0活跃维护

从 YouTube、SoundCloud、Bandcamp 等流媒体站点抓取视频与音频元数据及流地址的 Java 解析库,是 NewPipe 客户端的核心组件。

NewPipe's core library for extracting data from streaming sites

v0.27.0发布于 2026-11-07 11:23 UTC2,048star +5 / 7 天628fork同步于 2026-11-10 05:45 UTC

怎么上手

README 里没有找到可直接复制的安装命令

README 里没有找到可直接复制的安装命令,请到 README 或官方文档查看安装方式。

硬件要求

README 没有说明硬件要求。

下载:源码 zip·GitHub Releases(安装包)本站不镜像安装包

项目说明

这个项目的说明还在生成中,先参考下面「最近发版」和 README。

最近发版

5 个版本v0.27.0
  1. v0.27.0最新正式版2026-11-07 · 2026-11-07 11:23 UTC

    Breaking

    In this release the target and source compatibility Java versions are increased from 11 to 17. #1489

    Convert Description to a record class - #1486
    YouTube API changes
    • YoutubeParsingHelper.isHooktubeURL(URL url) is removed because the Hooktube has been discontinued. #1532

    Following methods are removed because poToken for ANDROID and IOS clients cannot be generated anymore:

    • YoutubeStreamExtractor.forceFetchIosClient
    • YoutubeParsingHelper.getAndroidUserAgent
    • YoutubeParsingHelper.getIosUserAgent
    • YoutubeParsingHelper.isAndroidStreamingUrl
    • YoutubeParsingHelper.isIosStreamingUrl
    • YoutubeParsingHelper.isWebEmbeddedPlayerStreamingUrl
    • InnertubeClientRequestInfo.ofAndroidClient
    • InnertubeClientRequestInfo.ofIosClient
    • InnertubeClientRequestInfo.ofWebEmbeddedPlayerClient
    • PoTokenProvider.getAndroidClientPoToken
    • PoTokenProvider.getIosClientPoToken
    • PoTokenProvider.getWebEmbedClientPoToken

    For more information see #1529.

    New

    • [YouTube] Add support for live chat comments - #1481
    • [YouTube] Add support for podcasts and courses channel tabs - #1524

    Improved

    • [YouTube] Fallback to avatarThumbnailUrl for comment thumbnails - #1525
    • [YouTube] Mark auto-dubbed streams as auto-generated - #1507
    • [YouTube] Update Invidious instances - #1532
    • Validate HTTP response codes across the extractor - #1322
    • [YouTube] Expose captionTracks name on SubtitlesStream
    • [YouTube] Extract client version from service worker data - #1520
    • [YouTube] Update n-sig parsing - #1545 #1556
    • [Youtube] Detect comment avatar size dynamically and add tests for hard-coded images sizes #1526

    Fixed

    Development

    • Add more uses of streamAsJsonObjects - #1489
    • [YouTube] Remove broken clients, update clients constants and fix some tests - #1529
    • Update user agent to Firefox ESR 153 - #1552
    Dependency updates
    • Bump gradle-wrapper from 9.6.1 to 9.8.2 - #1531 #1538 #1549 #1554 #1557
    • Bump com.google.code.gson:gson from 2.14.0 to 2.15.0 - #1560#1560
    • Bump com.google.protobuf:protobuf-javalite from 4.35.1 to 4.36.2 - #1537 #1544 #1547
    • Bump com.puppycrawl.tools:checkstyle from 12.3.0 to 12.3.1 - #1553#1553
    • Bump com.squareup.okhttp3:okhttp from 5.4.0 to 5.5.1 - #1535 #1559
    • Bump org.jsoup:jsoup from 1.22.2 to 1.23.2 - #1527 #1542
    CI
    • Bump actions/setup-java from 5 to 6 - #1540
  2. v0.26.52026-08-15 · 2026-08-15 19:20 UTC
    查看更新说明

    This is a hotfix release with just one small, but important fix:

    • Fix media.ccc.de live streams - #1533
  3. v0.26.42026-07-20 · 2026-07-20 09:00 UTC
    查看更新说明

    New

    • Add ability to know if a comment is edited (new method isEdited() to CommentsInfoItem) and implement it for YouTube #1513 #1514

    Fixed

    • [YouTube] Fix fetching playlists continuations #1518

    Development

    Dependency updates
    • Bump com.google.protobuf:protobuf-javalite from 4.35.0 to 4.35.1#1511
    • Bump com.squareup.okhttp3:okhttp from 5.3.2 to 5.4.0 #1509
    • Bump gradle-wrapper from 9.5.1 to 9.6.1 #1516 #1519
    CI
    • Bump actions/cache from 5 to 6 #1517
    • Bump actions/checkout from 6 to 7 #1515
  4. v0.26.32026-06-09 · 2026-06-09 21:14 UTC
    查看更新说明

    Improved

    • [YouTube] Use formats xTags to extract audio track type #1504

    Fixed

    • [YouTube] Workaround SABR enforcement by using another player client #1508
    • [YouTube] Fix extraction of playlist items and some properties in lockup view models #1503
    • [YouTube] Remove blind position fallbacks in lockup view count/date extraction #1494
    • [Bandcamp] Fix bandcamp search #1493
  5. v0.26.22026-05-23 · 2026-05-23 17:32 UTC
    查看更新说明

    Improved

    • [YouTube] Fallback to playlist uploader on course playlists #1431

    Fixed

    • [SoundCloud] Fix comments crash by handling null page URLs #1476
    • [YouTube] Fix duration and live stream display in related videos #1478
    • [YouTube] Fix date/view extraction and add tests for lockupViewModel in channel tabs #1492

    Development

    • Bump gradle-wrapper from 9.4.1 to 9.5.1 #1484 #1487
    • Use streamAsJsonObjects() #1485

    Depency Updates

    • Bump com.google.code.gson:gson from 2.13.2 to 2.14.0 #1482
    • Bump com.google.protobuf from 0.9.6 to 0.10.0 #1479
    • Bump com.google.protobuf:protobuf-javalite from 4.34.1 to 4.35.0#1490
    • Bump org.jsoup:jsoup from 1.22.1 to 1.22.2 #1480
    • Bump org.junit:junit-bom from 5.14.3 to 5.14.4 #1483

用户点评

登录用户的真实使用记录,可按版本和硬件筛选
共 0 条

    还没有人点评。第一个说出真实体验的人最有价值。

    README 原文

    未翻译

    NewPipe Extractor

    CI JIT Pack Badge JDoc • Documentation

    NewPipe Extractor is a library for extracting things from streaming sites. It is a core component of NewPipe, but could be used independently.

    Usage

    NewPipe Extractor is available at JitPack's Maven repo.

    If you're using Gradle, you could add NewPipe Extractor as a dependency with the following steps:

    1. Add maven { url 'https://jitpack.io' } to the repositories in your build.gradle.
    2. Add implementation 'com.github.teamnewpipe:NewPipeExtractor:INSERT_VERSION_HERE' to the dependencies in your build.gradle. Replace INSERT_VERSION_HERE with the latest release.
    3. If you are using tools to minimize your project, make sure to keep the files below, by e.g. adding the following lines to your proguard file:
    ## Rules for NewPipeExtractor
    -keep class org.mozilla.javascript.** { *; }
    -keep class org.mozilla.classfile.ClassFileWriter
    -dontwarn org.mozilla.javascript.tools.**
    

    [!NOTE] To use NewPipe Extractor in Android projects with a minSdk below 33, core library desugaring with the desugar_jdk_libs_nio artifact is required.

    Testing changes

    Maven Central

    NewPipe Extractor's snapshots are available on Maven Central's snapshot repository. These versions are based on the commit's short hash (for e.g. git rev-parse --short HEAD) and are available for 90 days since the date of publication/commit.

    repositories {
        maven(url = "https://central.sonatype.com/repository/maven-snapshots/")
    }
    
    dependencies {
        implementation("net.newpipe:extractor:${LAST_COMMIT_SHORT_HASH}-SNAPSHOT")
    }
    
    Local

    To test changes quickly you can build the library locally. A good approach would be to add something like the following to your settings.gradle:

    includeBuild('../NewPipeExtractor') {
        dependencySubstitution {
            substitute module('com.github.teamnewpipe:NewPipeExtractor') with project(':extractor')
        }
    }
    

    Another approach would be to use the local Maven repository, here's a gist of how to use it:

    1. Add mavenLocal() in your project repositories list (usually as the first entry to give priority above the others).
    2. It's recommended that you change the version of this library (e.g. LOCAL_SNAPSHOT).
    3. Run gradle's ìnstall task to deploy this library to your local repository (using the wrapper, present in the root of this project: ./gradlew install)
    4. Change the dependency version used in your project to match the one you chose in step 2 (implementation 'com.github.teamnewpipe:NewPipeExtractor:LOCAL_SNAPSHOT')

    [!TIP] Tip for Android Studio users: After you make changes and run the install task, use the menu option File → "Sync with File System" to refresh the library in your project.

    Supported sites

    The following sites are currently supported:

    • YouTube
    • SoundCloud
    • media.ccc.de
    • PeerTube (no P2P)
    • Bandcamp

    License

    GNU GPLv3 Image

    NewPipe Extractor is Free Software: You can use, study share and improve it at your will. Specifically you can redistribute and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.