arteget is a simple ruby script that dumps television programs from the "+7" site of Arte.
It uses rtmpdump to dump streams to the disk. Be sure to have it in your PATH.
This software uses libhttp by Yoann Guillot, which you can find here :
http://github.com/jjyg/libhttpclient
Thank you Yoann !
Known issues :
Note that if the program name contains accents, such as "Téléchat", your shell
should be configured in UTF-8, otherwise it won't work.
Basic usage :
1) downloading the latest broadcasts of a given program :
$ ./arteget.rb karambolage
2) downloading a single video :
$ ./arteget.rb http://www.arte.tv/guide/fr/040347-001/le-cerveau-et-ses-automatismes-1-2
3) downloading the 10 most viewed videos :
$ ./arteget.rb --top=10
4) downloading the 10 best rated videos :
$ ./arteget.rb -b
5) downloading in german, standard quality :
$ ./artget.rb --qual=sd --lang=de karambolage
Protip :
You can list current program titles by using "list" as a program name.
History :
v2.X :
- fix rtmpdump invocation
v2.2 : 2014/01/12
- description file dumping
- program listing
v2.1 :
- check for rtmpdump at startup
- option to specify destination directory
v2.0 : 2013/08/25
- rewritten for the new site, not compatible with
the old one.
- allow download of subtitled version
v1.11 : 2011/04/30
- fix URL downloading bug
v1.1 : 2011/03/06
- options on the command line
- reworked to use XML descriptions
- top videos (views/ratings) support
- quiet mode
v1.01 : 2011/02/20
- URL arg support
- new site URL
- libhttp update
v1.0 : 2010/06/13
- new libhttp release
- handles new site
- way cleaner code
v0.1 : 2008/XX/XX
- First "release"
Arte seems to have implemented some online check with GETS on the streaming
server to keep the streaming alive, but apparently it's just statistics.
The code is there in case it is useful :
url = "doLog?securityCheck=957HOP79HSPJX&sLogId="+Time.now.to_i.to_s+"&eName=Philosophie&aCtx=VIDEOTHEK%2DPLAYER&eId="+vid_id+"&logPlay=false&dt=0&action=PLAYING&tCode="
pp url
th = Thread.new do
logid=(Time.now.to_i*1000+354).to_s
url = "doLog?securityCheck=957HOP79HSPJX&sLogId="+logid+"&eName=Philosophie&aCtx=VIDEOTHEK%2DPLAYER&eId="+vid_id+"&logPlay=false&dt=0&action=PLAYING&tCode="
cnt = 0
log = HttpClient.new("medialog.arte.tv",1)
log.get("doLog?securityCheck=957HOP79HSPJX&sLogId="+logid+"&eName=Philosophie&aCtx=VIDEOTHEK%2DPLAYER&eId="+vid_id+"&logPlay=false&dt=0&action=PLAY&tCode=0")
loop do
puts url+cnt.to_s
log.get(url+cnt.to_s)
sleep(10)
cnt += 10
end
end
Contact me by mail :
mailbox : devel-arteget
domain : syscall.eu