Turns out you can get everything you need with just the session token
and cf_bm must be some kind of tracking token... After looking up
"cf_bm" it is clear that it is a bot managment token from cloudflare...
CloudFlare Bot Management... cf_bm :0. Damn it I spent so much time not
understanding what this is and I could have just looked it up. Anyways
it's no longer required for this program.
Now episode numbers are scraped from the season page rather than counting.
This allow for specials (which dont have an episode number) to be saved
with a slightly different format.
This option will build four executables:
- dropout-dl-minimal (with curl without sqlite or gcrypt)
- dropout-dl-sqlite (with curl and sqlite without gcrypt)
- dropout-dl-full (with curl, sqlite and gcrypt)
- tests
This function actually handles non-alphanumeric characters such as ','
and ';'. This means that files with possibly invalid names are no longer
created.
Created 'cookie' class to handle cookies easier. The 'cookie' class
contains a name, value, and length. The 'cookie' class also has
functions for getting values for an sqlite database and decrypting chrome cookies.
This is done with parallel arrays. The first time the 'get_qualities' function is called it gets the
qualities and urls and places them into the 'qualities' and
'quality_urls' arrays and returns the 'qualities' array. If the function
has already run it returns the 'qualities' array. It can be forced the
re-find the qualities by clearing the 'qualities' array.
Now the file that profiles are found from is only set once in one place
and the #ifdef statements are inside of the function rather than
redefining the same thing multiple times.