Hello,
I am a user of EPG /France/CanalSat.fr.
Unfortunately, it has not worked for a few days.
If someone can get the EPG back on the road, it would be greatly appreciated.
Eratox.
Brought to you by Jan van Straaten
Program Development - Jan van Straaten ------- Web design - Francis De Paemeleere
Supported by: servercare.nl
Hi,
+1 for this request ! Canalsat is the most important epg on France. On Canalsat, there are lot of exclusives channels like CLique TV, Viceland, Olympia, etc...
If a man can help us to use again this grabber, it's very friendly.
New url request is on JSON site.
Ex : Channel 601 (Canal+) for day = 0 : http://hodor.canalplus.pro/api/v1/mycanal/gridTVContent/1f386e59bd499c29...
"url_index{url|http://hodor.canalplus.pro/api/v1/mycanal/gridTVContent/1f386e59bd499c29...|channel|.json?cache=360000¶ms[day]=|urldate|&imagesForPrimeOnly=tru}"
I can extract all channels id and name to the new channels.xml, but i don't understand how to edit the ini file with json site... :s
Please help us to find a way again.
Thanks to the community of grabbers :)
+1 EPG /France/CanalSat.fr not worked for a few days.
I Find other URL with used site_id from current settings in file "canalsat.fr.channels.xml"
Example For CANAL+ (site_id="301")
https://hodor.canalplus.pro/api/v1/mycanal/channels/96119d61cb9cb943ac65...
Modify for canalsat.fr.ini
https://hodor.canalplus.pro/api/v1/mycanal/channels/96119d61cb9cb943ac65...|channel|/broadcasts/day/|urldate|
The result is A json as URL of poloche63.
I hope this part "96119d61cb9cb943ac658699affb2314" of the url is not dynamic
I noticed that the timestamp is set to the time zone +00. it seems to add 1 hour.
I will look at what it is possible to do based on the file "program-television.org.ini" which also parse a JSON.
I'm new to the community, a little help would be my pleasure
Sorry for my english :)
Is a bit more complicated.. easy to see but more difficult to get. Siteini needs completly rewrite and will look into it time permitting. Time zone is UTC so is correct will be changed to correct time by your device
ps
Welcome !
Thank you Matt! :)
I work on file "canalsat.fr.ini"
I get data "title" and "subtitle" since new URL
I read the documentation v2.2 but I meet 2 problems:
1 - the date time data on XML file output isn't correct, the time is always 00:00 but the date is correct
2 - How to use a secondary URL for get another datas, I need for get "description" , "actors", "producers" , etc...
Who can help on questions ?
Thank you in advance for your contributions
here is example XML output
**********************************************************************************
CANAL+
http://www.canalplus.com
L'hebd'Hollywood
Du 15 févr
Les p'tits diables - S3 - Ép 20
Série Animation
**********************************************************************************
here is my file "canalsat.fr.ini"
**********************************************************************************
site {url=canalplus.com|timezone=Europe/Paris|maxdays=11|cultureinfo=fr-FR|charset=utf-8|titlematchfactor=10}
site {ratingsystem=CSA|episodesystem=onscreen|nopageoverlaps|allowlastpageoverflow}
*
url_index {url|https://hodor.canalplus.pro/api/v1/mycanal/channels/96119d61cb9cb943ac65...|channel|/broadcasts/day/|urldate|}
url_index.headers {accept=text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9}
url_index.headers {accept-encoding=gzip,deflate,br}
url_index.headers {origin=https://www.canalplus.com}
url_index.headers {referer=https://www.canalplus.com/programme-tv/}
*
urldate.format {daycounter|0}
*
index_showsplit.scrub {multi|{"timeSlices":|{"contentID||]}});}
index_showsplit.modify {cleanup(style=unidecode)}
index_showsplit.modify {cleanup(style=jsondecode)}
*
index_title.scrub {single|"title":"||",}
index_subtitle.scrub {single|"subtitle":"||",}
**WIP HERE
index_start.scrub {single|"startTime":"||",}
*index_start.modify {calculate(format=date,yyyy/MM/dd HH:mm)} *convert UNIX date to yyyy/MM/dd HH:mm
*index_start.modify {calculate(format=time,HH:mm)}
*index_start.modify {calculate(format=utcdate)}
*index_start.modify {calculate(format=date,unix)}
**
**
index_temp_1.scrub {single|"URLPage":"||"}
index_temp_2{url(debug)|'index_temp_1')
description.scrub {single(debug)|"summary":"||",}
*index_temp_2.scrub {multi(debug)|{"prefix": "De :"|{"||]}});}
*
**index_episode.scrub {regex(pattern="nbEpi:'Et1',numEpi:'E1',saison:'S1'")||","nbEpi":"\d+","numEpi":"\d+","saison":"\d+"||}
**index_episode.modify {remove|"}
**index_category.scrub{single|ture":"||",}
**index_actor.scrub {single(separator="," max=3)|"Acteur":["||"],}
**index_actor.modify {remove|"}
**index_producer.scrub {single(separator="","" max=2)|"Réalisateur|":["|"|],"}
**index_producer.modify {replace|","|\|}
**index_presenter.scrub {single|{"Présentateur vedette":|["|"|]|,}
**index_composer.scrub {single(max=2)|"Musique":["||"],}
**index_composer.modify {replace|","|\|}
**index_urlchannellogo.modify {addstart|http://www.programme-television.org/logo_channels/35x35/chaine_'config_site_id'.png}
***
**index_urlshow {url|http://www.programme-television.org|"urlDiff|":"|"|,}
**index_urlshow.headers {customheader=Accept-Encoding=gzip,deflate} * to speedup the downloading of the detail pages
**index_temp_1.modify {set|'index_urlshow'}
**index_temp_1.modify {remove(type=regex)|"(^.*?#).*?$"}
***
**country.scrub {single|Pays de production :|||}
**title.scrub {single||||}
**title.modify {cleanup(tags="<"">")}
**subtitle.scrub {single()|
}
**description.scrub {single||||}
**description.modify {cleanup(tags="<"">")}
***
**index_urlsubdetail.headers {customheader=Accept-Encoding=gzip,deflate} * to speedup the downloading of the subdetail pages
**index_urlsubdetail.modify {set|'index_temp_1'}
**index_urlsubdetail.modify {addstart()|http://www.programme-television.org/getinfos/}
***
**subdetail_title.scrub{single||||<\/h1>}
**subdetail_title.modify {cleanup(tags="<"">")}
**subdetail_title.modify {cleanup(style=jsondecode)}
**subdetail_description.scrub {single|||<\/div>|<\/div>} *required by movies
**subdetail_description.modify {cleanup(style=jsondecode)}
**subdetail_description.modify {cleanup(tags="<"">")}
**subdetail_productiondate.scrub {single|
**country.scrub {single|Pays de production :<\/strong>||<\/li>}
**********************************************************************************
index_urlshow {url||"URLPage":"||"|"}
index_urlshow.headers {customheader=Accept-Encoding=gzip,deflate,br}
hello community
I have a good news
We find in attachement the new file "canalsat.fr.ini", no need to modify file "canalsat.fr.channels.xml"
good reception
thank you mat8861 four you help
Bellicheone
Very good news my friends !!!
I'm testing it now ^^
Thanks a lot
:D
PS : after grab epg on Channel 813 (Olympia), we have "(?)" at the end of all shows title. Please, it's possible to edit the ini file and check why ?
Thankx bro
I had the same problem with the previous ini file
You have 2 solutions
1 - Modify ini file Add "index_title.modify {replace| (?)|}" After "index_title.scrub"
= index_title.scrub {single|"title":"||",}
+ index_title.modify {replace| (?)|}
= index_subtitle.scrub {single|"subtitle":"||",}
2 - Create bash file sh linux with this code
#!/bin/bash
fileGuide="./guide.xml"
if ! [ -z $1 ]; then
echo "Use File Path From ARG : $1"
fileGuide=$1
fi
sed -i 's/ (?)//g' $fileGuide
exit 0;
############################################################
Try this and give me the result
That means index_title do not match details title. Your scrub seems correct, details do not have episode in title...you can decrease titlematch factor or add: title.modify{addstart|'index_title'}, this way will always have the index_title and no mismatch.
Just checked few channels also some episodes are wrong.
hello community
I continous to working on ini file
You find in attachement the new file "canalsat.fr.ini" corriged
- the remove "(?)" at the end of all shows title
- the episode information is now correct
For file "canalsat.fr.channels.xml",I've also check url channel for 1 to 1000.
some channel are no longer available and new channel are available
You find new file "canalsat.fr.channels.xml" in attachement
Good test :)
Hi,
Thanks a lot for the support bro :)
I have a little issue with timespan grabbing.
I use a timespan of "10" for grab 11 day in my webgrab++conf.fxml, but since i use your canalsat.ini, i have an error.
Other ini files can grab for more than 11 days, but if i setup timespan = 10 and add a channel on canalsat, webgrabb++ kill the processus...
How to operate my global conf to allow grab on 11 days with other ini, and allow maximum day on canalsat without the script crash ?
[ Info ] update requested for - 1 - out of - 1 - channels for 11 day(s)
[ Debug ]
[ Info ] ( 1/1 ) CANALSAT.FR -- chan. (xmltv_id=Olympia.canal) -- mode Incremental
[Error ] Unable to update channel Olympia.canal
[Critical] Generic syntax exception:
[Critical] message:
[Error ] no index page data received from Olympia.canal
[Error ] unable to update channel, try again later
[ Info ] Existing guide data restored!
[ Debug ]
[ Debug ] 0 shows in 1 channels
[ Debug ] 0 updated shows
[ Debug ] 0 new shows added
[ Info ]
[ Info ]
[ ] Job finished at 22/02/2020 12:57:57 done in 2s
[ Debug ] statistics upload error: Le serveur distant a retourné une erreur : (404) Introuvable.
Have you an idea to correct this error ?
----------
As season and episodes numbers are in title, i have modify the script ini to grab it on episode-num section
results :
episode-num system="onscreen">s1.e5
Well most of the time, not all the channels have 11 or 14 days, so is better to grab 7 days. I personally grab 3 days as i think is useless to grab so much data, at least i check whats'on that day or day after. Lots of time to grab with no advantage, but again this is my personal need and way to use epg.
"episode-num system="onscreen">s1.e5"
The xmltv standard (onscreen) is S1 E5 or in xmltv_ns format both supported by wg++, then there is ddprogid (not very common) but if you like that style...up to you.
How can i regex multiples patterns for Seasons/Episodes style in canalsat epg ?
There are 3 patterns available in title :
1 - "S1 - Ép 2" for Seasons and episodes (ex : Thérapie - S1 - Ép 2) -> \s(S\d+\s-\sÉp\s\d+)
2 - "Ép 1" for Episodes only (ex : Hustle - Ép 1) -> \s(Ép\s\d+)
3 - "S1" for Seasons only (ex : Vice - S1) -> \s(S\d+)
Actually with the code below :
I have only the first pattern in my xml, other are not catched... :s
I would like to check the 3 patterns to catch the 3 formats
If pattern 1 exists, set it as 'episode'
If not, check the pattern 2 and set it as 'episode'
If not, check the pattern 3 and set it as 'episode'
If not, keep 'episode' empty
How do that :)
thank for help
try
episode.modify {substring(pattern="S'S1' Ep'E1'" type=regex)|'episode' "-\s(?:S\d+(?:\s-\s)*)?(?:[ÉEe]p\s\d+)*"}
you may need (don't remember)
episode.modify {remove(type=regex)|\s-\s}
Nice mat8861 :)
Works fine !
I have moded the initial version of bellicheone to add season/episodes numbers in right sections, and i have remove the info in title
If people want to have correctly seasons/episodes in xml and not in only in title, take the ini in attachments ^^
Thanks for all my guys
change :
episode.modify {remove(type=regex)|\s-\s}
into :
episode.modify {remove(type=regex)|\s?-\s}
remove :
episode.modify {remove(type=regex)|-\s}
OK matt8861
So, i have other issue, i would like to add at start of description the 'episode' variable.
the results are :
--> in case of description is not empty : "s1.e4: Tyler the Creator explore ce qu'il aime, et leur fonctionnement à la rencontre d'experts qui l'aident à inventer et à innover comme seul Tyler le pouvait."
--> in case of description is empty : "s1.4:."
It's possible to remove ":." at the end of case empty description ? --> "s1.e4:." ---> "s1.4"
Else if, only remove the dot "." ? --> "s1.e4:." ---> "s1.4:"
Thanks
The dot i guess is coming from description, as you are adding something.
So i would do:
temp_1.modify {addstart|'episode':} *gets the : and become part of episode as temp
description.modify {addstart('temp_1' not "")|'temp_1'}
result:
--> in case of description is empty : " "
--> in case of description is not empty : "s1.e4: Tyler the Creator....
in case you don't want the dot between s1.e4 use another mod between temp_1 and description:
temp_1.modify {remove(type=regex)|\.}
Hummm, when i have a dot in the description after my addstart element 'episode', in log file, we have not description element found.
[ Debug ] Debugging information SiteIni
[ Debug ] Element: DESCRIPTION
[ Debug ] html source written to : C:\Users\xxx\AppData\Local\WebGrab+Plus\html.source.htm
[ Debug ] scrub strings:
[ Debug ] type & arguments : single (debug)
[ Debug ] blockstart (bs): "summary":"
[ Debug ] elementstart (es):
[ Debug ] elementend (ee): ",
[ Debug ]
[ Debug ] No Block with these separators
So the dot not come from description...
And your two solutions to remove the dot not work. I always have the dot after the episode element if the description is not found in html source. :s
Hello, since few days, this script no longer works...
[ Info ] ( 1/1 ) CANALSAT.FR -- chan. (xmltv_id=VICELAND) -- mode Incremental
[Warning ] no robots data found
[Warning ] skipped robots check
[Error ] Unable to update channel VICELAND
[Critical] Generic syntax exception:
[Critical] message:
[Error ] no index page data received from VICELAND
[Error ] unable to update channel, try again later
Juste replace in the url "v1" to "v2" and it's ok ^^
I have other issue...
For example :
If a program start : 13/03/2020 at 06h00 AM.
In the url page of the epg, we have startTime : 1584075600000 (good time)
But, when i look the final file.xml, it's a bad hours for this program --> start="20200313050000 +0100"
The good value of this program should be : start="20200313060000 +0100"
Why webgrabplus do it ?
It's a good solution to add : index_start.modify {calculate(format=time)|1:00 +} ?
Thanks
Hi
You have two solutions:
A : You change settings EPG in player application for add 1 hour. Generally, this setting is applyed on all channels EPG
B: In file canalsat.fr.ini, you Add "index_start.modify {calculate(format=time)|1:00 +}" after the line
index_start.scrub
Personnaly i use the solution B because i use multi source in my grabber.
:)
It does that because you have timezone Europe/Paris instead of UTC
Bellicheone solution is wrong unless you want to change to +2 in daylight and back...worst i would have said index_start.modify {calculate(timezone=Europe/Paris)}
So the time in java is 13 march 2020 5.00.00 UTC and that's how you need to set it: timezone=UTC 99% of the players will convert and give you right time.
See http://www.webgrabplus.com/faq#faq_1190
How to read the datetime in the XMLTV file (and the UTC offset)? and What timezone should I use?
Hi all, and thanks for your job.
I would like to help you, but i'm a bit new to WebGrab+plus.
I have downloaded the latest .ini file that you posted here and i got these messages for almost all channels (excepted bfmtv :
( 4/206 ) CANALSAT.FR -- chan. (xmltv_id=FRANCE 2) -- mode Force
[Error ] Unable to update channel FRANCE 2
[Critical] Generic syntax exception:
[Critical] message:
[Error ] no index page data received from FRANCE 2
[Error ] unable to update channel, try again later
[ Info ] Existing guide data restored!
Could you please help me?
I precise :
I replaced the canalsat.ini file in the folder siteIni.pack (I dont know how to add SiteIni.user in the config)
I attach my config.
Thanks
Please give me your canalsat.ini in attachments.
Thanks for your help :)
@poloche63 some help please ??? :)
At the moment TV is our only way to pass time (the whole counrty is confined)
Thanks
Hi, we updated the ini pack. --> http://www.webgrabplus.com/sites/default/files/download/ini/SiteIniPack_...
PLease download the new ini file for canalsat :)
It's my modded version ^^
I dont know why it didnt work when i used your version, but now it works !
Thanks a lot!
Yesterday I have tried all the day to set TVHeadend on my rpi (with Librelec), with no results. Today, the day begins with a success :)
url_index {url|https://hodor.canalplus.pro/api/v2/mycanal/channels/7355736d119edb10421d...|channel|/broadcasts/day/|urldate|}
now work
new URL : url_index {url|https://hodor.canalplus.pro/api/v2/mycanal/channels/034b4509164657117a41...|channel|/broadcasts/day/|urldate|}
Hi.
Now there is a new error, the 401 unauthorized user...
Anyone knows how to fix it ?
Thanks.
canalplus.com.ini in the networks folder is the new site.
read the remarks at the top of ini for channel list creation as its multi country.
Btw canalsat.fr works fine, may be you need to update siteini pack.
Hello. Thanks for this, i didn't know that. But I've the same result :/
Hello. I'm probably doing something wrong again as it does not work here with the same version of the ini as you are using.
With canalsat.com.ini (v1) or canalsat.fr.ini (v14) I have this result : error downloading page: Response status code does not indicate success: 404 (Not Found).
Anyone have an ideia why ?
Thanks.
error 404 means the site is un reachable.
try to ping the site in terminal from the same pc
ping canalplus.com
or
ping canalsat.fr
try changing your dns to google
8.8.8.8 and 8.8.4.4
Hey,
Thansk for this ideia.
Both are working...
your going to have to provide a detailed step of what your doing(with files) because obviously something is wrong.
the request url must be getting created incorrectly.
Hi,
I'm grabbing epg for many years now from my nas synology. Everything was working fine until I noticed today that I've the error i've shown to you today. The problem only happens with canalsat as the others ini I used are working fine (orange.ini, vodafone.ini etc.)
Which files do you need ?
Thanks for your time.
are you trying to do?grab epg,create a channel list?
what are your channel lines,update mode setting(if channel list creation).
we cant try to figure out whats wrong as it works for us so we need to try to duplicate what your doing.
I'm grabbing epg. I attached my configuration file and the log. Thanks.
try this user agent
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/109.0.0.0 Safari/537.36
also remove your files,your config has your license info.
It works with this agent, a big thank you !
Done, thanks !
Hello,
I'm still in v2.1.11 and it doesn't work anymore either.
I have the following message
Unable to update channel XXXX.fr
Generic syntax exception:
message:
no index page data received from XXXX.fr
unable to update channel, try again later
I tried to modify the user agent indicated above but without success.
someone has an idea
2.1.11 is too old.
ok thanks for your reponse
I nevertheless solved my problem :)
Hi everyone,
Does someone can help with the canalsat.fr.ini file ?
Fresh reintall of the webgraplus package and canalsat channels doesnt work.
Thanks
can you post your webgrab log? it works here
Pages