converted to markdown format

This commit is contained in:
Clone Conflict 2021-12-22 11:16:18 +01:00 committed by GitHub
parent ea20ca0b00
commit b61148fd7e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 28 additions and 49 deletions

View File

@ -1,39 +1,22 @@
= Using Newpipe Extractor # Using Newpipe Extractor in android app
== Add dependencies to gradle: ## Add dependencies to gradle:
- *project* build.gradle: 1. **project** build.gradle:
[,gradle] ```gradle
----
repositories { repositories {
... ...
maven { url 'https://jitpack.io' } maven { url 'https://jitpack.io' }
} }
---- ```
.or in settings.build 2. **module**/app build.gradle:
[%collapsible]
======
this is properly for android ;)
[,gradle]
----
repositories {
...
maven { url 'https://jitpack.io' }
}
----
======
![](https://img.shields.io/github/v/release/TeamNewPipe/NewPipeExtractor.svg)
```gradle
- *module*/app build.gradle:
image:https://img.shields.io/github/v/release/TeamNewPipe/NewPipeExtractor.svg[]
[,gradle]
----
// NewPipe Libraries // NewPipe Libraries
implementation 'com.github.TeamNewPipe:NewPipeExtractor:0.21.12' implementation 'com.github.TeamNewPipe:NewPipeExtractor:0.21.12'
implementation 'com.github.TeamNewPipe:nanojson:1d9e1aea9049fc9f85e68b43ba39fe7be1c1f751' implementation 'com.github.TeamNewPipe:nanojson:1d9e1aea9049fc9f85e68b43ba39fe7be1c1f751'
@ -43,16 +26,16 @@ implementation 'com.github.TeamNewPipe:nanojson:1d9e1aea9049fc9f85e68b43ba39fe7b
//noinspection GradleDependency --> do not update okhttp to keep supporting Android 4.4 users //noinspection GradleDependency --> do not update okhttp to keep supporting Android 4.4 users
implementation "com.squareup.okhttp3:okhttp:3.12.13" implementation "com.squareup.okhttp3:okhttp:3.12.13"
---- ```
NOTE: You could really use any http client other than okhttp. **NOTE**: You could really use any http client other than okhttp.
== Configure for android projects: ## Configure for android projects:
Make sure you are using Java 11. Make sure you are using Java 11.
[,gradle]
``` ```gradle
android { android {
... ...
compileOptions { compileOptions {
@ -77,11 +60,11 @@ dependencies {
} }
``` ```
=== Proguard rules if you've [minify] enable: ## Proguard rules if you've [minify] enable:
the `proguard-rules.pro` file: the `proguard-rules.pro` file:
``` ```pro
... ...
# For NewPipeExtractor # For NewPipeExtractor
@ -115,11 +98,11 @@ the `proguard-rules.pro` file:
``` ```
=== Implementing [Downloader] (okhttp) ## Implementing [Downloader] (okhttp)
Copy paste from Newpipe ;) Copy paste from Newpipe ;)
``` ```kotlin
package com.mycompany.hello package com.mycompany.hello
import okhttp3.OkHttpClient import okhttp3.OkHttpClient
@ -190,10 +173,10 @@ class DownloaderImpl(
== Using the library! ## Using the library!
[,kotlin]
``` ```kotlin
// init Okhttp client // init Okhttp client
val okhttp = OkHttpClient.Builder() val okhttp = OkHttpClient.Builder()
.readTimeout(30, TimeUnit.SECONDS) .readTimeout(30, TimeUnit.SECONDS)
@ -207,19 +190,16 @@ val extractor = ServiceList.Youtube
``` ```
=== Getting suggestions: ### Getting suggestions:
[,kotlin] ```kotlin
```
extractor.suggestionExtractor.suggestionList("Hello") extractor.suggestionExtractor.suggestionList("Hello")
``` ```
### Search for videos:
=== Search for videos: ```kotlin
[,kotlin]
```
val search = extractor.getSearchExtractor("Hello") val search = extractor.getSearchExtractor("Hello")
search.fetchPage() search.fetchPage()
@ -229,10 +209,9 @@ print(search.initialPage.items)
``` ```
=== Get video: ### Get video:
[,kotlin] ```kotlin
```
val page = extractor.getStreamExtractor("https://www.youtube.com/watch?v=mIuYmbO9uBM") val page = extractor.getStreamExtractor("https://www.youtube.com/watch?v=mIuYmbO9uBM")
page.fetchPage() page.fetchPage()
@ -241,11 +220,11 @@ page.videoStreams
``` ```
== Final note: ## Final note:
This is very humble guide on how to use newpipe to scrap youtube *specificly* This is very humble guide on how to use newpipe to scrap youtube *specificly*
You can explore the library by your own You can explore the library by your own
image::https://imgur.com/2ciR9kq.png[width=400] ![](https://imgur.com/2ciR9kq.png[width=400])
I write this for me first to not forget and also in the hope that it will help some one :) I write this for me first to not forget and also in the hope that it will help some one :)