Comments (2)
I've been looking into using this for some of my personal projects and it has proven to be really great, despite the lack of tutorials/docs which makes things harder to understand for new people like me.
If you have some ideas or suggestions, or even if you want to contribute on that, free feel to open issues :)
is there a reason for this?
Yes, the goal of the Downloader
interface is to not depend on a specific network stack.
I managed to find this in
NewPipe
and had to C&P it over and remove all of the Android-related code.
You could have looked at the extractor test implementation instead (note that the 429 HTTP response code handling is a very bad way to handle captcha responses at the moment, in the app and in the extractor).
Anyway, is the documentation of the Downloader
class not enough to let you easily create an implementation?
from newpipeextractor.
If you have some ideas or suggestions, or even if you want to contribute on that, free feel to open issues :)
Yes I'm thinking about adding a new How-to
section into the doc. This can be dedicated for different how-tos like fetching channels, video stream URLs, etc. Do let me know if you think this is helpful or not.
Yes, the goal of the Downloader interface is to not depend on a specific network stack.
I understand that. My question was more about why there wasn't any "default" implementation of this so that people can use it out of the box. It actually took me a while to know that there wasn't one provided.
is the documentation of the Downloader class not enough to let you easily create an implementation?
Create an implementation: yes. Create an implementation that works properly: not so easily.
For example, from the DownloaderImpl
class within NewPipe, the execute
function needs to set specific headers, handle ReCaptcha, set cookies, etc. in order to, my guess is, fetch stuff properly from Youtube. These little things are hard to know when one's required to create an implementation from scratch when they just want to make use of the library to fetch a streamable URL, for example. At least for me, it was not easily enough that I ended up choosing to C&P the class from NewPipe over, rather than creating one from scratch.
I think just a standard YouTubeDownloader
or something would be something very beneficial to have in the library.
from newpipeextractor.
Related Issues (20)
- "Light" keys protection proposition with Base64 in the jar produced HOT 1
- Update params for fetching stream data? HOT 1
- Magnify Button to change layout from straight to landscape HOT 1
- ΠΠΊ
- Call requires API level 33 (current min is 26): java.util.stream.Collectors#toUnmodifiableList HOT 1
- Support other item types in ListInfo related items HOT 2
- Add support for Newgrounds audios and videos
- I keep getting Captcha challenges and solving them doesn't make them go away HOT 1
- Video transcripts HOT 4
- YT: Could not get like count
- YouTube Parse Error HOT 2
- Always return whatever YouTube provides when filtering search
- Consider including title in Bandcamp radio items
- [Bandcamp] Bug Pre-order Digital album shows links as null
- Support media.ccc.de Browse by category
- Support Nebula as an input platform HOT 2
- Add comment link support
- **FEATURE REQUEST**Video Lock When Scrolling - Similar to Odysee & YouTube** HOT 1
- Android API parse youtube can't play normal HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
π Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. πππ
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google β€οΈ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from newpipeextractor.