[DONE] Make --type work with --pid-recursive
I use --pid-recursive to download various events/series (Glasto, Proms, etc). However, I only want the videos, not the audio programmes.

My script has historically used "--exclude-category radio" - which used to work. But it relied on the BSS including "radio" in the category, which it seems to have stopped doing (I think it stopped working last year but I didn't notice at first).

I would still like to exclude the radio programmes. I tried using "--type tv" but that does not seem have any effect (presumably because the --pid-recursive logic overrides it?).

I am currently trying using a workround of "--radiomode none" but I am not sure if it is working or not yet.

It would be nice if "--type tv" worked.
--type is a search option unrelated to direct downloading, recursive or otherwise. --radiomode=none will achieve the desired effect.

If you want to implement new options to skip radio or tv programmes explicitly in a recursive download, I'll entertain a pull request. Just beware that there are several bad ways to do it, so be careful.
Hmm. My thought would be to do it as an --exclude-type, directly analogous to --exclude-category and the others. Even going as far as making it a regex (overkill but the consistency with the other --excludes might be helpful).

Before I have a go, would that fall into your "bad ways to do it"?
Sorry to reverse course, but on second thought, a pull request would be a mutual waste of time. This would be a virtually useless feature and I'm not willing to spend any time on it. The implementation would be trivial (though you can't be expected to know that), so my colleague may do it. If not, we'll just document the --radiomode hack. If any Glasto/Proms hoarders rock up, that will be more than sufficient.
--pid-recursive-type option added in v3.21

Possibly Related Threads…
Thread Author Replies Views Last Post
  [DONE]  Add option to make get_iplayer fail over if segment cannot be downloaded errfmt 10 12,814 14-08-2016, 11:05 PM
Last Post: errfmt