Giter Site home page Giter Site logo

Comments (2)

AudricV avatar AudricV commented on May 26, 2024

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.

aratare-jp avatar aratare-jp commented on May 26, 2024

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)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.