Giter Club home page Giter Club logo

switchtube-dl's Introduction

Hey, I'm Mona! 🌺

- Librarian & Software Engineer at Bibliothek im Regenbogenhaus
- Computer Science Student at Eastern University of Applied Sciences

A little bit more about me...

let mona = {
  Name = "Mona Celeste Panchaud"
  Pronouns = [ She; Her ]
  Code = [ ``F#``; ``C#``; TypeScript; CSS; LaTeX ]
  Tools = [ Rider; React; Fable ]
  OutsideOfCode = [ "🪡🧵"; "📚"; "🧙‍♀️"; "🖋️"; "👩‍🍳"; "🏊‍♀️"; "🚴‍♀️"; "⛰️"  ]
}

If you're interested in the types that make the above F# code compile, see below.

F# Types
type Pronoun = She | Her | He | Him | They | Them

type Language = ``F#`` | ``C#`` | TypeScript | CSS | LaTeX

type Tool = Rider | React | Fable

type Person = {
  Name: string
  Pronouns: Pronoun list
  Code: Language list
  Tools: Tool list
  OutsideOfCode: string list
}

switchtube-dl's People

Contributors

panmona avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

switchtube-dl's Issues

Add Date filter options

Is your feature request related to a problem? Please describe.
Downloading just recently uploaded videos requires interactive mode.

Describe the solution you'd like
Videos can be filtered by their upload date using the options --date, --datebefore or --dateafter. They accept dates in two formats:

  • Absolute dates: Dates in the format YYYYMMDD.
  • Relative dates: Dates in the format (now|today|-[1-9](day|week|month|year)(s)?) (e.g.: -2weeks, now)

These are additional filter options. If multiple conflicting ones are provided, follow the following prio:

  1. -a
  2. --date
  3. --datebefore / --dateafter (it should be possible to combine these)

Describe alternatives you've considered
Always using -a --skip is also possible for downloading all recently uploaded lectures when executing it in a regular interval. This seems to work well enough for now, which makes this feature a low priority.

Find videos to skip based on video ids

Is your feature request related to a problem? Please describe.
Some channels do not consistently name their videos, this can result in incorrect ordering if one doesn't rename the videos. When it is renamed, the file will be not considered for --skip though.

Describe the solution you'd like
Files that are considered for skip should be based on the video id in the file name and not on an exact match.
A regex can be used for this. Something like: https://regex101.com/r/9owqbZ/5
Or even better: https://regex101.com/r/lmlBZZ/1 ( thanks @manrel )

Describe alternatives you've considered
None

Additional context
None

Metadata download fails when video is not yet fully processed

Information

  • OS: Linux
  • Version: 0.0.7
  • Terminal: bash, Tilix

Describe the bug
The metadata download failed with the error that the duration_in_milliseconds field couldn't be found.

This field is apparently not present when the video is not yet fully processed (which isn't documented). More specific details about the video can't be fetched when this occurs.

To Reproduce
Try to download a channel that contains a published video, that is not yet fully processed.

Expected behavior
The metadata download works but doesn't include this video.

Reinstall switchtube-dl on macOS due to Homebrew tap change

Dear mac users (@YamashitaRen @iamfabio)

My GitHub name and tap name changed.
To keep receiving updates (like the newest 1.0 release) for this software you need to execute the following steps:

brew uninstall switchtube-dl
brew untap panmau/panmau
brew install panmona/panmona/switchtube-dl

If there are any questions, or you have any problems with these steps, let me know.

I am sorry for any inconveniences caused, and wish you a great start into the new semester! ✨

Make -t / --token optional

Is your feature request related to a problem? Please describe.
If the token is pasted as plain text into --token, it will appear in the bash_history.

Describe the solution you'd like
If -t / --token is not provided, the CLI should prompt for the token.

Describe alternatives you've considered
None

Additional context
https://spectreconsole.net/prompts/text#secrets

Program gets killed on Mac M1

Information

  • OS: MacOS M1
  • Version: 0.0.5
  • Terminal: Mac

The program does not seem to work on Mac M1. I installed it with homebrew.
% switchtube-dl --help
zsh: killed switchtube-dl

Specific video is downloaded with black video content

Information

  • OS: Linux
  • Version: 0.0.9
  • Terminal: bash, Tilix

Describe the bug
A specific video was downloaded with black video content, even though it displays normally on Switchtube.
This both happens with -c and -v.

To Reproduce
switchtube-dl -v "YZXIaohdhH" -t $SWITCHTUBE_TOKEN
(only reproducible with a token that has access to the channels of organization 86)

Expected behavior
The video is downloaded with the correct video content.

Screenshots
N/A

Additional context
N/A

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.