Join GitHub today
GitHub is home to over 50 million developers working together to host and review code, manage projects, and build software together.
Sign upGitHub is where the world builds software
Millions of developers and companies build, ship, and maintain their software on GitHub — the largest and most advanced development platform in the world.
CBC works nicely with new login stuff, but somehow only grabs every other episode? #24493
Comments
|
Tried removing |
|
Nope it was not in the list before.
But to double check I nuked the file, and the only things in the downloaded directory are
S002e000
S002e002
S002e004
And it won’t download anything when I run it again – so it’s missing 1 and 3
|
|
Single episode download successful using: Playlist download successful using: On my first attempt the videos all started to download but then eventually failed. Only the audio was complete. The second time round they were fine, so I'm putting it down to a network issue on my end. Try that second one, obviously replacing the output location, but use a different folder than you used before. If that doesn't work, try just this to rule out any other complications: If you're still having no luck, give the author a ping - #19160 |
|
Well after diffing my code more closely I noticed a change and after a lot of debug print statements I think I figured it out. If you enable the saving of the downloaded IDs, the code is actually mucking around internally and you end up with iD of the second video being saved after the 1st video is downloaded. Turn the option off and of course you get all files then, but no record of them being downloaded. Tracked down to the following piece of code - literally screwing things up rss = xpath_element(result,'rss') it basically is somehow ending up with the information for the next video and stomping all over the valid information. I just put a rss = None before the check and things go back to properly downloading. I assume something is wrong with the api - but I could not pin down what it was. BUT FOR SURE a nasty bug! |
|
And more information if it helps. Before the rss/update stuff the info looks something like this for say downloading Wild Bill using the following URL ... INFO DUMP AND you can see it's referring to the S01E00 trailer which is fine AFTER THE INFO UPDATE {'id': '38e815a-01242059898', 'title': 'Episode 1', 'formats': [{'format_id': 'AACHEv1-2_0-English', 'url': 'https://cbcvott-a.akamaihd.net/p/38e815a-01253ca9881/CBC_WILD_BILL_S01E00-v2-25549487/segments/CBC_WILD_BILL_S01E00_a5/prog_index.m3u8', 'manifest_url': 'https://cbcvott-a.akamaihd.net/p//38e815a-01253ca9881/CBC_WILD_BILL_S01E00-v2-25549487/CBC_WILD_BILL_S01E00-v2-25549487.m3u8? Now the update has turned the 'id' into literally the identifier for the 's01e01' episode. I know that since I printed the XML output from the CBC API and had passed it into an XML viewer. But I don't have a copy of it saved sorry to say. So once you finish the first one it will now use that id to save away into the downloaded record, and kaboom - the next video you want to download will get skipped. So you up with this every other episode situation. |
|
And some more information since I did find the XML api output I had captured. Here are some snippets showing the ID that got replaced above, but with the 'next shows' ID 38e815a-01253ca9881 <title>Trailer</title>and the second shows snippet 38e815a-01242059898 <title>Episode 1</title>Still unsure since it's been a while since I explored that API - I used to have a good understanding of it back in 2018 when I implemented a basic auth for cbc for my stuff. and I swear I had a way to just browse the XML infomation but alas I didn't keep good notes it seems. |
|
Ping @meunierd |
Checklist
Verbose log
Description
NOW for sure I have already downloaded the 0/2/4 episodes, so it's not trying again, but 1, 3 didn't download at all.
Well not quite sure how to explain this but I think you can tell from the above dump, that's it doing some sort of weird matching where it only really attempts to download every second episode. So in this case the trailer, then 2, then 4'. It's weird and I tried to look at it, but was unable to figure it out. At least your new CBC stuff works, while my older version has become broken now. But in my older version I somehow did fix this but being brain dead can't seem to figure out where I had fixed the issue.