1
0
mirror of https://github.com/spaam/svtplay-dl.git synced 2024-11-28 06:04:17 +01:00
Commit Graph

1552 Commits

Author SHA1 Message Date
Anders Waldenborg
231eaf00e6 Make Service.handles a classmethod
This way it can be called without instantiating the class.
2014-01-25 22:57:49 +01:00
Anders Waldenborg
dcf4c1bd23 Add doctests for new functions in utils
The print call is there to make it py2/3 compatible (py2 adds u'' where py3 just adds '')
2014-01-25 22:57:49 +01:00
Anders Waldenborg
9d3ffd07d8 Fix reverse logic in io 2014-01-25 22:57:49 +01:00
Anders Waldenborg
d6ab73679e Improve title to filename conversion.
Does unicode NFD decomposition on the string before stripping non ascii chars.

This means that chars like 'ü' is decomposed into 'u' and '¨', which mean that
when non-ascii chars are dropped we will still keep the 'u'.

Fixes #60
2014-01-25 22:57:37 +01:00
Anders Waldenborg
712901cc8e Decode html entities in title tag 2014-01-25 13:01:01 +01:00
Anders Waldenborg
0671b2418e Display http request urls and time with --verbose 2014-01-25 13:01:01 +01:00
Anders Waldenborg
06023e5b04 Add --verbose option 2014-01-25 13:01:01 +01:00
Anders Waldenborg
db426b804c Fix slow regex for grabbing title-tag.
Changes regex to not allow matching overlapping matches, which
made compilation of the regex noticeable slow.
2014-01-25 13:01:01 +01:00
Johan Andersson
560145a4ff New version 0.9.2014.01.18
python3 support for HDS, more viaplay sites and hd support for urplay
2014-01-18 18:56:17 +01:00
Johan Andersson
14b888b09e viaplay: support for tv[36]play.{dk,no,lv,ee,lt and viasat4play.no 2014-01-16 21:41:59 +01:00
Johan Andersson
7e591c2733 get_media: dont add options.output to tmp variable 2014-01-16 20:57:30 +01:00
Johan Andersson
b14ba49f74 get_media: output to dir and get automagic name again.
removed it in f51d804d. but this one is better
2014-01-16 19:46:28 +01:00
Johan Andersson
08be2f55cb svtplay: add support for beta.s.s 2014-01-16 12:33:54 +01:00
Johan Andersson
ec8fe2a5b9 tv4play: print error message when there is no streams 2014-01-15 19:21:05 +01:00
Johan Andersson
dcdfbd1e4e urplay: support for HD streams 2014-01-09 00:32:14 +01:00
Johan Andersson
e63e23bd70 urplay: missing imports 2014-01-08 23:36:57 +01:00
Johan Andersson
b5e67876c4 hds: python3 support 2014-01-07 20:52:03 +01:00
Johan Andersson
c24123dc61 service: missing urlparse for py3 2014-01-05 17:28:00 +01:00
Johan Andersson
89ab7259b7 New version with for urplay 2014-01-03 16:55:56 +01:00
Johan Andersson
2972555cbc urplay: forgot to remove old line.. 2014-01-03 16:53:48 +01:00
Johan Andersson
c7dfdcf6f5 New version with fixes for viaplay, urplay and dr. 2014-01-03 16:40:19 +01:00
Johan Andersson
21916bbf78 Merge pull request #58 from olof/topic/default_handles_method
Refactor our handles() method to baseclass
2014-01-03 07:10:32 -08:00
Johan Andersson
959c3ad599 get_media: with this it takes forever to get the titel. 2014-01-03 12:23:44 +01:00
Johan Andersson
a80a41974a urplay: it is not necessary to replace characters anymore 2014-01-03 12:15:21 +01:00
Olof Johansson
e838384c52 Support supported_domains regexp for services
Lets services with more complex domains (like domains with language/country
codes) use a regular expressions that will match the supported domains for
the handles() method.
2014-01-01 16:22:07 +01:00
Olof Johansson
436090ddf9 Rename Service's handle method to handles
handle can be ambiguous (i.e, not a verb).

Signed-off-by: Olof Johansson <olof@ethup.se>
2014-01-01 16:22:07 +01:00
Olof Johansson
9f9bcad0c7 Add default handle method in Service base class
The default handle method will look for a supported_domains attribute
(a list), containing the supported domains. The subclassed service
class can of course override this if other means of determining support
is needded.
2014-01-01 16:22:07 +01:00
Olof Johansson
dfeadd152c urplay: fix pylint warning (anomalous-backslash-in-string) 2014-01-01 16:21:35 +01:00
Olof Johansson
768558a0a6 justin: exit with failure if regexp does not match
This change will avoid an ugly stacktrace, but the issue is still present. The
"real" error message won't be drowned out though.
2014-01-01 16:06:54 +01:00
Johan Andersson
9345284547 Make pylint bit happier 2013-12-30 01:43:59 +01:00
Johan Andersson
9b5a67e874 dr: missing imports 2013-12-30 01:39:05 +01:00
Johan Andersson
cceb60f8b3 get_http_data: use space instead of tab one line 2013-12-30 01:37:13 +01:00
Johan Andersson
33bb2c5c13 Replace sys.version_info with pyX 2013-12-30 01:35:08 +01:00
Johan Andersson
b09fc7b319 get_media: remove html entities in titel 2013-12-30 01:12:38 +01:00
Johan Andersson
f51d804d4f get_media: options.output could never happen 2013-12-30 01:02:42 +01:00
Johan Andersson
e0e75f5116 rtmp: we always get an .flv file not mp4 2013-12-29 18:38:39 +01:00
Johan Andersson
ed7f18b2af viaplay: they use longer first dirname nowdays 2013-12-25 19:26:40 +01:00
Johan Andersson
af0bfdde00 viaplay: only match numeric id:s 2013-12-22 21:28:42 +01:00
Johan Andersson
14b93c0cef New version
tv4play fixes
outputfilename fix when title tag is on more then one line.
2013-12-11 17:25:53 +01:00
Johan Andersson
dbcf83e519 options: set default quality to 0 2013-12-11 17:22:46 +01:00
Johan Andersson
facfc6833b output: fixes a problem when title-tag is on multiple lines. 2013-12-11 17:19:15 +01:00
Johan Andersson
7ce8f4a8a2 tv4play: select mp4 for mediaformat 2013-11-17 13:32:33 +01:00
Johan Andersson
8071ca12a3 New version: svtplay and vimeo fixes 2013-11-15 00:27:49 +01:00
Johan Andersson
35c54623ad vimeo: don't depend on lxml now. 2013-11-14 22:56:32 +01:00
Johan Andersson
78e3da190f Merge pull request #55 from antoneliasson/master
Fixed Vimeo module.
2013-11-14 13:47:03 -08:00
Johan Andersson
8df8823893 svtplay: check for ?, if it exists remove it from json request. 2013-11-14 22:46:08 +01:00
Johan Andersson
26bd057689 svtplay: only check swf for rtmp stream 2013-11-14 22:44:46 +01:00
Johan Andersson
8535e6f106 generic: catch embed svt videos. 2013-11-14 22:43:39 +01:00
Anton Eliasson
3e8f8015bd Fixed Vimeo module.
This introduces an external dependency for lxml (http://lxml.de/). The standard
library xml.etree doesn't support invalid XML and Vimeo's source is fairly
broken. There are several third party XML parsers so I just chose my favorite.
We might have been able to get away this time by using a regexp search but that
would have introduced brittle code instead.

I've also ripped out some old safeguards that didn't make sense anymore and
put the quality auto-selection code in a separate method. As the quality setting
on Vimeo is a string (hd, sd or mobile), we can't use
svtplay_dl.utils.select_quality which just picks the highest number in a list.

Signed-off-by: Anton Eliasson <devel@antoneliasson.se>
2013-11-12 21:00:58 +01:00
Johan Andersson
50aab78454 New version with svtplay and subtitle_tt fix 2013-10-28 20:22:18 +01:00
Johan Andersson
4348b93167 subtitle_tt: urplay changed from dur till duration 2013-10-28 20:16:12 +01:00
Johan Andersson
dfcd714429 svtplay: replace some urlmatchning with urlparse 2013-10-21 14:01:52 +02:00
Johan Andersson
e3977bf524 New version 2013-10-14 20:24:18 +02:00
Johan Andersson
54ac6ccd3c hls: dont search for bandwidth at a fixed position.
On svtplay they added subtitle info in the playlist.
Beacuse of that the script crashed when we tried to access it
2013-10-14 20:18:09 +02:00
Johan Andersson
71b1b585d0 svtplay: fixing a regression from last version 2013-10-14 20:05:03 +02:00
Johan Andersson
d549f7c374 New version 2013-10-08 22:17:13 +02:00
Johan Andersson
0cec19b780 svtplay: correct condition for rtmp-streams 2013-10-08 18:36:23 +02:00
Johan Andersson
d3b181f90e svtplay: bring back rtmp support 2013-10-08 15:27:00 +02:00
Johan Andersson
f68d47bab8 nrk: subtitle support 2013-09-15 00:29:26 +02:00
Johan Andersson
8a72d889b8 subtitle_tt: make up an end time when it does not exists.
In some streams end time does not exists.
so we make our own from beginning + duration.
2013-09-15 00:28:23 +02:00
Johan Andersson
4d4e785dd5 dr.dk: News still use the old thing 2013-09-14 22:39:37 +02:00
Johan Andersson
5a3936b4f7 dr.dk: support for HLS 2013-09-14 22:13:34 +02:00
Johan Andersson
1ac99d5f73 dr.dk: Support for more qualities 2013-09-14 21:58:55 +02:00
Per Goransson
2b0998de30 BUG: make dr.dk work again 2013-09-14 19:03:50 +02:00
Johan Andersson
6f7cd4bcd0 get_media: Check for embed videos first.
sydsvenskan.se are using qbrick for their own videos.
but they used tv4play.se for some videos ex: obama visit in sweden.
2013-09-04 15:02:58 +02:00
Johan Andersson
545d78840b qbrick: support for automagic detect live videos. 2013-09-04 14:59:52 +02:00
Johan Andersson
90f26988ac qbrick: dn.se changed their site again. 2013-09-04 14:59:21 +02:00
Johan Andersson
08280809ad hls: simplify encrypted part 2013-09-03 19:10:07 +02:00
Johan Andersson
f918821145 New version with tv10 support 2013-09-03 14:55:46 +02:00
Johan Andersson
27779a62f6 viaplay: support for tv10play.se 2013-09-03 14:48:41 +02:00
Johan Andersson
3a2a6e8fcc new version 2013-08-31 11:01:37 +02:00
Johan Andersson
fcd83a2a61 justin: support for non-subscriber channels 2013-08-31 10:59:20 +02:00
Olof Johansson
b5c9339b2c hls: support keys over https as well as http 2013-08-29 20:46:02 +02:00
Johan Andersson
2bf02d1a2b utils: remove old comment 2013-08-15 16:36:38 +02:00
Johan Andersson
7ee2dd5c1e viaplay: new site update. 2013-08-15 14:20:02 +02:00
Johan Andersson
dcf140475d utils: refactor get_http_data 2013-08-13 20:06:46 +02:00
Johan Andersson
feb480a8f1 New version 2013-08-10 21:21:28 +02:00
Johan Andersson
c33541ee87 viaplay: correct url to .swf file 2013-08-10 20:40:08 +02:00
Johan Andersson
b27fb86305 viaplay: support for live streams 2013-08-10 20:38:42 +02:00
Johan Andersson
979b8c43f7 subtitle_sami: remove an extra space in the beginning 2013-08-10 20:29:06 +02:00
Johan Andersson
4c858f173f subtitle_sami: fix unicode encode issue 2013-08-10 20:29:06 +02:00
Olof Johansson
7da961b511 justin: add missing verb to error message 2013-08-09 18:02:57 +02:00
Olof Johansson
3cfbd6b679 Print help text when called without arguments 2013-07-25 21:05:29 +02:00
Johan Andersson
4c30886d53 subtitle: python 2/3 fixes. 2013-05-29 23:21:15 +02:00
Johan Andersson
c982f29551 subtitle_tt: converting didn't work.
based on a fix from quite @ github
2013-05-29 23:21:14 +02:00
Johan Andersson
358803c722 justin: new path for vod files. 2013-05-29 23:21:14 +02:00
Johan Andersson
608497d335 tv4play: uncomment necessary info to rtmpdump 2013-05-29 23:21:13 +02:00
Johan Andersson
1b722f188b New version 0.9.2013.05.06 2013-05-06 12:18:38 +02:00
Johan Andersson
49a92b98f8 svtplay: they removed playertype from jsonfile. 2013-05-06 12:17:46 +02:00
Johan Andersson
f7760ee640 Adding missing r prefixes to regex string 2013-05-05 12:57:42 +02:00
Johan Andersson
195e3b7184 Mtvservices: better error message
Print a better error message when the video is not available
2013-05-05 12:35:49 +02:00
Johan Andersson
06368689de Qbrick: this condition never happen 2013-05-03 16:59:40 +02:00
Johan Andersson
aede0ce993 Qbrick: support for sydsvenskan.se 2013-05-03 16:51:18 +02:00
Johan Andersson
98ccd0573b qbrick: fixed detection for di.se videos. 2013-04-29 14:34:03 +02:00
Olof Johansson
73694a1703 get_http_data: Create Request object
The OpenerDirector does not support .adddata(), but it OpenerDirector.open()
does accept being passed a Request object.
2013-04-27 13:46:38 +02:00
Olof Johansson
a688e0494f kanal5: Don't redefine builtin "format" 2013-04-27 13:27:30 +02:00
Olof Johansson
32cf9ff45f mtvservices: minor pylint cleanup 2013-04-27 13:26:19 +02:00
Olof Johansson
c9b38e21f6 Don't use deprecated builtin map() 2013-04-27 13:25:31 +02:00
Olof Johansson
22d06ba0fe Disable pylint warning E1103 when using urlparse
pylint has issues with urlparse, e.g:

    Instance of 'ParseResult' has no 'query' member (but some types could not be inferred)
2013-04-27 13:17:00 +02:00
Olof Johansson
15af22000b utils.io: Forgot to add pylint disable for E0611 2013-04-27 13:05:10 +02:00
Johan Andersson
aad1993d4e 0.9.2013.04.22 2013-04-22 09:45:10 +02:00
Johan Andersson
dd763ce846 Cosmetic fixes 2013-04-21 22:59:27 +02:00
Johan Andersson
447528d4c5 mtvservices: better error message. 2013-04-21 22:58:34 +02:00
Johan Andersson
078df0b3e5 forgot to add mtvservices.py 2013-04-21 21:59:25 +02:00
Johan Andersson
7feba77677 Support for Mtvservices (thedailyshow & colbertnation) 2013-04-21 21:51:45 +02:00
Olof Johansson
bd1ae14e53 Isolate py3/2.7 conditional imports to own modules 2013-04-21 13:45:43 +02:00
Olof Johansson
119a49b0d2 utils: import socket 2013-04-21 13:45:43 +02:00
Olof Johansson
e9bd5b8004 Make all services inherit svtplay_dl.service.Service 2013-04-21 13:45:43 +02:00
Olof Johansson
2d2cead9bc hls: catch KeyError exception by name 2013-04-21 13:45:43 +02:00
Olof Johansson
8d605f2819 Remove unused variable warnings 2013-04-21 13:45:43 +02:00
Olof Johansson
607d6b57ec utils: Remove unused arguments for get_http_data() 2013-04-21 13:45:43 +02:00
Olof Johansson
a0b7a755dc service.sr: use if "foo" in dict instead of catching KeyError 2013-04-21 13:45:43 +02:00
Olof Johansson
eef049cc0c hds: remove swf argument (it was unused) 2013-04-21 13:45:43 +02:00
Olof Johansson
a4202238c9 Remove unused imports 2013-04-21 13:45:43 +02:00
Olof Johansson
1372a4e12e svtplay_dl.tests.output: initial set of unit tests for progress() 2013-04-19 18:12:36 +02:00
Olof Johansson
b31834fd6e svtplay_dl.output: Make progress() wrap progressbar()
The progressbar() currently does not handle the case where the total size is
unknown. But with this change, progress() will internally use progressbar()
for its bar generation, while still supporting a more basic progress info when
total size is unknown.
2013-04-19 17:44:21 +02:00
Olof Johansson
ae8fda8963 svtplay_dl.output: prettier progressbar generation 2013-04-19 17:39:25 +02:00
Johan Andersson
5ef5e850e4 2013-04-17 2013-04-17 09:42:28 +02:00
Olof Johansson
b931d58319 Add unit test for oppetarkiv.se 2013-04-16 17:51:31 +02:00
Johan Andersson
4ebf565652 svtplay: support for oppetarkiv.se 2013-04-16 13:18:40 +02:00
Johan Andersson
514ed7e546 python3 fixes, urlparse and addinfourl. 2013-04-14 21:26:39 +02:00
Johan Andersson
c47fae0cb4 justin.tv: fixes for swf-file 2013-04-14 21:08:12 +02:00
Johan Andersson
c4382d3d1b Merge branch 'master' of github.com:spaam/svtplay-dl 2013-04-02 15:31:16 +02:00
Johan Andersson
1dfc3909f1 update version number 2013-04-02 15:29:36 +02:00
Johan Andersson
fa3e95ff7c Merge pull request #35 from olof/topic/eta_class
ETA class for fetchers
2013-03-25 12:14:32 -07:00
Olof Johansson
13c2ee494e Use ETA class in HDS and HLS fetchers 2013-03-25 19:54:41 +01:00
Olof Johansson
0136c06a3b svtplay_dl.output: add an ETA class
This class is used to calculate remaining time to process a given
list of items.
2013-03-25 19:32:06 +01:00
Johan Andersson
370a1b507b util: Fix some exceptions 2013-03-25 19:27:26 +01:00
Daniel
0de19d2c11 Option --flexible-quality (-Q) 2013-03-25 19:05:18 +01:00
Johan Andersson
3cc8752f39 download_http: import HTTPError 2013-03-24 20:37:46 +01:00
Johan Andersson
f959af260c kanal5: import download_hls 2013-03-24 20:33:39 +01:00
Johan Andersson
613b31413d radioplay: sys.exit is the right one 2013-03-24 20:31:26 +01:00
Johan Andersson
6e49f503a8 urplay: import subtitle_tt 2013-03-24 20:28:14 +01:00
Johan Andersson
fc6a91c03a svtplay: right subtitle variable 2013-03-24 20:27:35 +01:00
Johan Andersson
b6a91a9d31 cosmetics add a space 2013-03-24 20:26:24 +01:00
Johan Andersson
15af0a5418 svtplay: right subtitle url 2013-03-24 20:24:34 +01:00
Johan Andersson
df70896c84 import subtitle functions 2013-03-24 20:24:08 +01:00
Johan Andersson
a951a0b65e Missing imports in utils 2013-03-24 20:20:16 +01:00
Johan Andersson
ab84546d48 download_http: Request missing from imports 2013-03-24 17:37:31 +01:00
Johan Andersson
78d5b2a212 Generic: embeded tv4play videos 2013-03-24 14:55:14 +01:00
Johan Andersson
12ca98359f Right module name in svtplay test 2013-03-24 14:13:32 +01:00
Olof Johansson
652218e568 svtplay_dl.tests.output: fix indentation damage
And add a note about rewriting the mockfile hack.
2013-03-23 19:21:09 +01:00
Olof Johansson
a02a46752d Add unit tests for timestr() 2013-03-23 18:08:20 +01:00
Olof Johansson
f72f195e35 Fix bugs in timestr(), converting msec to time string
Also adds a docstring for timestr().
2013-03-23 18:08:16 +01:00
Olof Johansson
91cf0e2f15 Add unittests for svtplay.service.svtplay 2013-03-23 17:02:56 +01:00
Johan Andersson
311f9c4d15 Update version number 2013-03-23 16:12:26 +01:00
Johan Andersson
01bb02ea68 Fix so embedded videos works again 2013-03-23 16:11:36 +01:00
Johan Andersson
0ae6ec8634 service: move sites variable out from handler 2013-03-23 15:58:15 +01:00
Johan Andersson
56304a36c6 Move classes under the imports in service/ 2013-03-23 15:56:25 +01:00
Johan Andersson
f8d8cd4ecc Make a single file 2013-03-23 15:43:05 +01:00
Johan Andersson
eeac0feb14 Move get_media into lib. 2013-03-23 15:02:41 +01:00
Johan Andersson
cfd20232ab Rename module from lib/svtplay to lib/svtplay_dl
less confusion with the service.
2013-03-17 19:55:19 +01:00