From 2202affe80e8afade5e71e382f71a112b69949dc Mon Sep 17 00:00:00 2001
From: freearhey <7253922+freearhey@users.noreply.github.com>
Date: Sat, 25 Jan 2025 22:11:05 +0300
Subject: [PATCH 1/7] Create content.json
---
sites/yes.co.il/__data__/content.json | 1 +
1 file changed, 1 insertion(+)
create mode 100644 sites/yes.co.il/__data__/content.json
diff --git a/sites/yes.co.il/__data__/content.json b/sites/yes.co.il/__data__/content.json
new file mode 100644
index 00000000..758492a4
--- /dev/null
+++ b/sites/yes.co.il/__data__/content.json
@@ -0,0 +1 @@
+{"items":[{"id":97513171,"programId":1033623,"title":"הבית","description":"דרמת מתח סוחפת. זוג צעיר שוכר וילה בכפר רומנטי באיטליה כדי לשפר את הזוגיות שלהם, אך עד מהרה מוצאים עצמם קורבנות בתוכנית זדונית של בעל המקום. עם: ארון פול ('שובר שורות'), אמילי רטאייקאוסקי. במאי: ג'ורג' רטליף. 2018.","imageUrl":"https://fykswkmjb.filerobot.com/VodAndHomeChan/VP001212610.JPG","starts":"2025-01-29T23:52:00Z","ends":"2025-01-30T01:31:00Z","channelId":"YSA1"},{"id":97513203,"programId":3046682,"title":"ג'ורג' הגדול: סיפורו של ג'ורג' פורמן","description":"דרמה ביוגרפית. סיפורו המופלא של המתאגרף האגדי, ג'ורג' פורמן. לאחר שפרש מאגרוף והפך לכומר, מצוקה כלכלית מחזירה אותו לזירה בגיל 45 ולעשיית היסטוריה כאלוף העולם המבוגר ביותר. עם:פורסט וויטאקר. במאי:ג'ורג' טילמן ג'וניור. 2023.","imageUrl":"https://fykswkmjb.filerobot.com/VodAndHomeChan/VP003200744.JPG","starts":"2025-01-30T13:41:00Z","ends":"2025-01-30T15:50:00Z","channelId":"YSA1"},{"id":97513541,"programId":944376,"title":"התפסן היה מרגל","description":"דרמת מתח המבוססת על סיפור אמיתי. ספורטאי מצטיין מגוייס לשירותי הביון האמריקאים ונשלח למשימה כמרגל בגרמניה בזמן מלה\"ע ה-2. משימתו: לגלות האם הנאצים מתכננים פצצת אטום. עם: פול ראד, סיינה מילר, גאי פירס. במאי:בן לוין. 2018.","imageUrl":"https://fykswkmjb.filerobot.com/VodAndHomeChan/VP001105233.JPG","starts":"2025-01-30T17:54:00Z","ends":"2025-01-30T19:30:00Z","channelId":"YSA1"},{"id":97513597,"programId":3729456,"title":"הבחורים בסירה","description":"דרמה מבוססת רב מכר, בבימויו של ג'ורג' קלוני. סיפורה האמיתי ומעורר ההשראה של נבחרת השיט של ארה\"ב, שכנגד כל הסיכויים הצליחה להעפיל לאולימפיאדת 1936 בגרמניה הנאצית, בתקופת השפל הכלכלי הגדול. עם: ג'ואל אדגרטון, קאלום טרנר. 2023.","imageUrl":"https://fykswkmjb.filerobot.com/VodAndHomeChan/VP003887390.JPG","starts":"2025-01-30T19:30:00Z","ends":"2025-01-30T21:34:00Z","channelId":"YSA1"},{"id":97513605,"programId":1003467,"title":"הג'נטלמן והאקדח","description":"דרמת פשע עטורת שבחים בכיכובו של רוברט רדפורד. סיפורו האמיתי והבלתי ייאמן של פורסט טאקר, אשר בגיל 70 הדהים את ארה\"ב כשברח מכלא סאן קוונטין השמור היטב. עם: קייסי אפלק, סיסי ספייסק, דני גלובר. במאי: דייויד לאורי. 2018.","imageUrl":"https://fykswkmjb.filerobot.com/VodAndHomeChan/VP001165549.JPG","starts":"2025-01-30T21:34:00Z","ends":"2025-01-30T23:09:00Z","channelId":"YSA1"},{"id":97705645,"programId":3705319,"title":"השידורים יתחדשו בקרוב","description":"השידורים יתחדשו בקרוב.","imageUrl":"https://fykswkmjb.filerobot.com/extch/SI51539.JPG","starts":"2025-01-30T03:27:00Z","ends":"2025-01-30T05:01:00Z","channelId":"YSA1"},{"id":97703668,"programId":2409514,"title":"מים עמוקים (בן אפלק)","description":"דרמת מתח בכיכובו של בן אפלק. גבר מאפשר לאשתו להיפגש עם מאהבים שונים על מנת לשמור על שלום בית. העניינים מסתבכים עבורו כשהוא הופך להיות חשוד בהיעלמותם של אותם מאהבים. עם:אנה דה ארמס. במאי:אדריאן לין (\"הצעה מגונה\"). 2022.","imageUrl":"https://fykswkmjb.filerobot.com/VodAndHomeChan/VP002559064.JPG","starts":"2025-01-30T01:31:00Z","ends":"2025-01-30T03:27:00Z","channelId":"YSA1"},{"id":97703680,"programId":3047216,"title":"אזהרת ספוילר","description":"דרמה קומית בכיכובו של ג'ים פרסונס ('המפץ הגדול'). הקשר הרומנטי בין כתב חסר ביטחון לצלם, שטרם יצא מהארון בפני הוריו, עומד בפני מבחן לאחר שלשניים מסתבר כי אחד מהם אובחן במחלה סופנית. עם: בן אולדריג'. במאי: מייקל שואוולטר. 2022.","imageUrl":"https://fykswkmjb.filerobot.com/VodAndHomeChan/VP003219742.JPG","starts":"2025-01-30T09:57:00Z","ends":"2025-01-30T11:50:00Z","channelId":"YSA1"},{"id":97703684,"programId":1228047,"title":"מאדאם קירי","description":"דרמה היסטורית מרתקת המבוססת על סיפור אמיתי. סיפורה של המדענית פורצת הדרך מארי קירי ובן זוגה, אשר בתגליתם את הקרינה הרדיואקטיבית שינו את פני העולם המדעי. עם: רוזמונד פייק, סם ריילי. במאית: מרג'אן סטראפי. בריטניה, 2019.","imageUrl":"https://fykswkmjb.filerobot.com/VodAndHomeChan/VP001447699.JPG","starts":"2025-01-30T11:50:00Z","ends":"2025-01-30T13:41:00Z","channelId":"YSA1"},{"id":97703692,"programId":3561946,"title":"נפש אחת","description":"דרמה מרגשת ומבוססת סיפור אמיתי ומדהים, בכיכובם של אנתוני הופקינס והלנה בונהם-קרטר. בשנת 1938, כשהשלטון הנאצי מתקרב לפראג, בנקאי בריטי צעיר מחליט לעשות הכל על מנת להציל את הפליטים היהודים שבעיר. במאי: ג'יימס האוז. 2023.","imageUrl":"https://fykswkmjb.filerobot.com/VodAndHomeChan/VP003751630.JPG","starts":"2025-01-30T08:07:00Z","ends":"2025-01-30T09:57:00Z","channelId":"YSA1"},{"id":97703704,"programId":253852,"title":"שנת כלב","description":"דרמה קומית. סופר אשר אשתו עזבה אותו מחליט לאמץ כלב עקב משבר אמצע החיים. במהרה מתברר שהכלב מתוסבך יותר ממנו. עם: ג'ף ברידג'ס, לורן אמברוז. במאי: ג'ורג' לאבו. 2009.","imageUrl":"https://fykswkmjb.filerobot.com/VodAndHomeChan/VP000856325.JPG","starts":"2025-01-30T05:01:00Z","ends":"2025-01-30T06:22:00Z","channelId":"YSA1"},{"id":97703708,"programId":216661,"title":"אהבה בתפריט","description":"דרמה קומית רומנטית בכיכובה של קת'רין זיטה ג'ונס. חייה של שפית מצליחה ופרפקציוניסטית מניו יורק משתנים, כשהיא מקבלת לחזקתה את אחייניתה הקטנה, במקביל להגעתו של שף מוכשר וכריזמטי למסעדה. עם: ארון אקהרט. במאי: סקוט היקס. 2007.","imageUrl":"https://fykswkmjb.filerobot.com/VodAndHomeChan/VP000472368.JPG","starts":"2025-01-30T06:22:00Z","ends":"2025-01-30T08:07:00Z","channelId":"YSA1"},{"id":97703724,"programId":3234207,"title":"אלופים","description":"דרמת ספורט קומית בכיכובו של וודי הרלסון, מבוססת סיפור אמיתי. מאמן כדורסל לשעבר מקבל צוות של שחקנים עם מוגבלות שכלית. עד מהרה הוא מבין שלמרות הספקות שלו, יחד, הצוות הזה יכול להגיע רחוק יותר ממה שהם אי פעם דמיינו. 2023.","imageUrl":"https://fykswkmjb.filerobot.com/VodAndHomeChan/VP003388006.JPG","starts":"2025-01-30T15:50:00Z","ends":"2025-01-30T17:54:00Z","channelId":"YSA1"}]}
\ No newline at end of file
From 40f0b0460ee0326a5fda18665d39cfde3010c404 Mon Sep 17 00:00:00 2001
From: freearhey <7253922+freearhey@users.noreply.github.com>
Date: Sat, 25 Jan 2025 22:11:11 +0300
Subject: [PATCH 2/7] Create yes.co.il.test.js
---
sites/yes.co.il/yes.co.il.test.js | 48 +++++++++++++++++++++++++++++++
1 file changed, 48 insertions(+)
create mode 100644 sites/yes.co.il/yes.co.il.test.js
diff --git a/sites/yes.co.il/yes.co.il.test.js b/sites/yes.co.il/yes.co.il.test.js
new file mode 100644
index 00000000..e6aa8eeb
--- /dev/null
+++ b/sites/yes.co.il/yes.co.il.test.js
@@ -0,0 +1,48 @@
+const { parser, url, request } = require('./yes.co.il.config.js')
+const fs = require('fs')
+const path = require('path')
+const dayjs = require('dayjs')
+const utc = require('dayjs/plugin/utc')
+const customParseFormat = require('dayjs/plugin/customParseFormat')
+dayjs.extend(customParseFormat)
+dayjs.extend(utc)
+
+const date = dayjs.utc('2025-01-30', 'YYYY-MM-DD').startOf('d')
+const channel = { site_id: 'YSA1' }
+
+it('can generate valid url', () => {
+ expect(url({ channel, date })).toBe(
+ 'https://svc.yes.co.il/api/content/broadcast-schedule/channels/YSA1?date=2025-1-30&ignorePastItems=true'
+ )
+})
+
+it('can generate valid request headers', () => {
+ expect(request.headers).toMatchObject({
+ 'user-agent':
+ 'Mozilla/5.0 (Linux; Linux x86_64) AppleWebKit/600.3 (KHTML, like Gecko) Chrome/48.0.2544.291 Safari/600'
+ })
+})
+
+it('can parse response', () => {
+ const content = fs.readFileSync(path.resolve(__dirname, '__data__/content.json'))
+
+ let results = parser({ content })
+
+ expect(results.length).toBe(13)
+ expect(results[0]).toMatchObject({
+ title: 'הבית',
+ description:
+ "דרמת מתח סוחפת. זוג צעיר שוכר וילה בכפר רומנטי באיטליה כדי לשפר את הזוגיות שלהם, אך עד מהרה מוצאים עצמם קורבנות בתוכנית זדונית של בעל המקום. עם: ארון פול ('שובר שורות'), אמילי רטאייקאוסקי. במאי: ג'ורג' רטליף. 2018.",
+ image: 'https://fykswkmjb.filerobot.com/VodAndHomeChan/VP001212610.JPG',
+ start: '2025-01-29T23:52:00Z',
+ stop: '2025-01-30T01:31:00Z'
+ })
+})
+
+it('can handle empty guide', () => {
+ const results = parser({
+ content: '{"items":[]}'
+ })
+
+ expect(results).toMatchObject([])
+})
From 7445722a2240d3f083db97942af3922b3e379039 Mon Sep 17 00:00:00 2001
From: freearhey <7253922+freearhey@users.noreply.github.com>
Date: Sat, 25 Jan 2025 22:11:32 +0300
Subject: [PATCH 3/7] Create yes.co.il.config.js
---
sites/yes.co.il/yes.co.il.config.js | 57 +++++++++++++++++++++++++++++
1 file changed, 57 insertions(+)
create mode 100644 sites/yes.co.il/yes.co.il.config.js
diff --git a/sites/yes.co.il/yes.co.il.config.js b/sites/yes.co.il/yes.co.il.config.js
new file mode 100644
index 00000000..c32e433d
--- /dev/null
+++ b/sites/yes.co.il/yes.co.il.config.js
@@ -0,0 +1,57 @@
+const axios = require('axios')
+
+module.exports = {
+ site: 'yes.co.il',
+ days: 2,
+ url({ channel, date }) {
+ return `https://svc.yes.co.il/api/content/broadcast-schedule/channels/${
+ channel.site_id
+ }?date=${date.format('YYYY-M-D')}&ignorePastItems=true`
+ },
+ request: {
+ headers: {
+ 'user-agent':
+ 'Mozilla/5.0 (Linux; Linux x86_64) AppleWebKit/600.3 (KHTML, like Gecko) Chrome/48.0.2544.291 Safari/600'
+ }
+ },
+ parser({ content }) {
+ const items = parseItems(content)
+
+ return items.map(item => ({
+ title: item.title,
+ description: item.description,
+ image: item.imageUrl,
+ start: item.starts,
+ stop: item.ends
+ }))
+ },
+ async channels() {
+ const data = await axios.get(
+ 'https://svc.yes.co.il/api/content/broadcast-schedule/channels?page=0&pageSize=1000',
+ {
+ headers: {
+ 'accept-language': 'he-IL',
+ 'user-agent':
+ 'Mozilla/5.0 (Linux; Linux x86_64) AppleWebKit/600.3 (KHTML, like Gecko) Chrome/48.0.2544.291 Safari/600'
+ }
+ }
+ )
+
+ return data.items.map(channel => ({
+ lang: 'he',
+ name: channel.title,
+ site_id: channel.channelId
+ }))
+ }
+}
+
+function parseItems(content) {
+ try {
+ const data = JSON.parse(content)
+ if (!data || !Array.isArray(data.items)) return []
+
+ return data.items
+ } catch {
+ return []
+ }
+}
From 0da74de6084f90d1f730057a72cd3c26eb49a9c5 Mon Sep 17 00:00:00 2001
From: freearhey <7253922+freearhey@users.noreply.github.com>
Date: Sat, 25 Jan 2025 22:11:39 +0300
Subject: [PATCH 4/7] Create readme.md
---
sites/yes.co.il/readme.md | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)
create mode 100644 sites/yes.co.il/readme.md
diff --git a/sites/yes.co.il/readme.md b/sites/yes.co.il/readme.md
new file mode 100644
index 00000000..5d606b46
--- /dev/null
+++ b/sites/yes.co.il/readme.md
@@ -0,0 +1,21 @@
+# yes.co.il
+
+https://www.yes.co.il/content/tv/broadcast
+
+### Download the guide
+
+```sh
+npm run grab --- --site=yes.co.il
+```
+
+### Update channel list
+
+```sh
+npm run channels:parse --- --config=./sites/yes.co.il/yes.co.il.config.js --output=./sites/yes.co.il/yes.co.il.channels.xml
+```
+
+### Test
+
+```sh
+npm test --- yes.co.il
+```
From ab7f1edbc6a6011730a642cefefcc33bfaa2f8ef Mon Sep 17 00:00:00 2001
From: freearhey <7253922+freearhey@users.noreply.github.com>
Date: Fri, 31 Jan 2025 20:09:18 +0300
Subject: [PATCH 5/7] Update yes.co.il.config.js
---
sites/yes.co.il/yes.co.il.config.js | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/sites/yes.co.il/yes.co.il.config.js b/sites/yes.co.il/yes.co.il.config.js
index c32e433d..f60202be 100644
--- a/sites/yes.co.il/yes.co.il.config.js
+++ b/sites/yes.co.il/yes.co.il.config.js
@@ -26,16 +26,16 @@ module.exports = {
}))
},
async channels() {
- const data = await axios.get(
- 'https://svc.yes.co.il/api/content/broadcast-schedule/channels?page=0&pageSize=1000',
- {
+ const data = await axios
+ .get('https://svc.yes.co.il/api/content/broadcast-schedule/channels?page=0&pageSize=1000', {
headers: {
'accept-language': 'he-IL',
'user-agent':
'Mozilla/5.0 (Linux; Linux x86_64) AppleWebKit/600.3 (KHTML, like Gecko) Chrome/48.0.2544.291 Safari/600'
}
- }
- )
+ })
+ .then(r => r.data)
+ .catch(console.error)
return data.items.map(channel => ({
lang: 'he',
From 7f7e4c082532ec8bd2fb57d1f5c0967aae3e31eb Mon Sep 17 00:00:00 2001
From: freearhey <7253922+freearhey@users.noreply.github.com>
Date: Fri, 31 Jan 2025 20:09:38 +0300
Subject: [PATCH 6/7] Create yes.co.il.channels.xml
---
sites/yes.co.il/yes.co.il.channels.xml | 178 +++++++++++++++++++++++++
1 file changed, 178 insertions(+)
create mode 100644 sites/yes.co.il/yes.co.il.channels.xml
diff --git a/sites/yes.co.il/yes.co.il.channels.xml b/sites/yes.co.il/yes.co.il.channels.xml
new file mode 100644
index 00000000..59e5520f
--- /dev/null
+++ b/sites/yes.co.il/yes.co.il.channels.xml
@@ -0,0 +1,178 @@
+
+
+ Sport 3 HD
+ Sport 4 HD
+ WiZ
+ Baby (RUS)
+ TeenNick
+ Kids Stars Channel
+ Current Time
+ REN TV
+ IDXTRA
+ SHANSON TV
+ Kan HD
+ Makan
+ Eurosport 2
+ Keshet HD
+ Reshet HD
+ Classica HD
+ TLC (68)
+ CGTN DOC
+ Sport 5+ HD (56)
+ Sport 5 4K
+ Sport 5 Stars HD (59)
+ Kan Educational
+ ONE2 HD
+ Design Channel (DIY)
+ Style Channel (Fashion IL)
+ Humor Channel
+ Bollywood Series
+ Turkish Drama
+ National G. Wild HD
+ Reality Channel (Reshet)
+ FRANCE3
+ Viva Vintage
+ Bober
+ Turkish Drama 3
+ Music IL
+ Turkish Drama 2
+ TV Game Shows
+ Keshet HD SUB
+ Reshet HD SUB
+ Kan HD SUB
+ ROTANA Cinema
+ Viva Premium
+ Mediterranean Plus
+ MTV HITS
+ Vacation Channel
+ ZOOM TOON
+ ONE DOCO
+ ONE EDGE
+ Kan HD LL
+ Dom Kino Premium
+ Mediterranean Channel 2
+ France 24 fr
+ Walla +
+ Childhood
+ Childhood songs
+ Sport TOGO 1
+ Sport TOGO 2
+ i24 English
+ i24 Arabic
+ Indian Drama
+ Indian Drama 2
+ MEZZO Live
+ MAD World
+ Yoyo
+ DOC
+ Classic Comedies
+ i24 Hebrew
+ Spanish Drama 1
+ Spanish Drama 2
+ Economics 10
+ Mediterranean movies
+ Sport 5 Gold (57)
+ Nickelodeon
+ Bollywood Movies
+ Blue HUSTLER
+ CGTN
+ TVR i
+ EGO
+ DAYSTAR
+ Health Channel
+ 1+1
+ FRANCE 24
+ IETV
+ Food Channel
+ Sport 1 single (63)
+ National G. HD
+ Sport 5 HD (55)
+ Travel Channel
+ Hidabroot
+ MTV Club (MTV Dance)
+ Dom Kino
+ Big Brother HD
+ EUROSPORT HD
+ Home and Family
+ TVCI
+ HOP! Childhood
+ JimJam
+ MTV Live HD
+ CTC
+ Sport 1 HD
+ History HD
+ Disney Junior
+ Viva Istanbul (Viva Plus)
+ Viva Istanbul (Viva Plus)
+ Carousel
+ Sport 5 Live HD (58)
+ HALA TV
+ Mediaset
+ NICK Junior
+ Mediterranean Channel
+ VREMYA
+ TELECAFE
+ Disney Junior RUS
+ JimJam RUS
+ ZOOM
+ Disney HD
+ Channel 14 HD
+ Discovery HD
+ Sport 2 HD
+ Baby
+ Junior
+ ONE HD
+ METV
+ LifeStyle
+ E
+ CNN
+ Fox News
+ History SD
+ Viva Telenovelas (Viva)
+ HOP
+ MTV (MTV Music)
+ MTV 00s (VH1)
+ MEZZO
+ Sky News
+ Kehilaty (98)
+ RTL
+ SAT 1
+ SAT 3
+ ARTE
+ TVE
+ Israel Plus (9)
+ MTV 80s (VH1 Classic)
+ EUROSTAR
+ PROTV
+ Bloomberg
+ NTV MIR
+ ANIMAL PLANET
+ Russian MusicBox
+ Music 24
+ LBC
+ ROTANA
+ RTM
+ GTV
+ Channel 1 Rus
+ RTR
+ NASHE KINO
+ CBS Reality
+ Knesset
+ France 2 (F2)
+ ZEETV
+ Children channel (RGE)
+ Yes POP UP HD
+ yes TV Comedy
+ yes TV Drama
+ yes TV Action
+ yes Together (Beyachad) HD
+ yes+ cinema
+ yes+ diamonds
+ yes Movies Drama
+ yes Movies Action
+ yes Movies Comedy
+ yes Movies Kids
+ iTV Shkufit History RUS
+ yes Docu HD
+ yes Israeli Cinema HD
+
From b7d58195f1f2e8dfbd6c5b3556ac48f23c6ae072 Mon Sep 17 00:00:00 2001
From: freearhey <7253922+freearhey@users.noreply.github.com>
Date: Fri, 31 Jan 2025 20:14:27 +0300
Subject: [PATCH 7/7] Update yes.co.il.channels.xml
---
sites/yes.co.il/yes.co.il.channels.xml | 1 -
1 file changed, 1 deletion(-)
diff --git a/sites/yes.co.il/yes.co.il.channels.xml b/sites/yes.co.il/yes.co.il.channels.xml
index 59e5520f..a75ba514 100644
--- a/sites/yes.co.il/yes.co.il.channels.xml
+++ b/sites/yes.co.il/yes.co.il.channels.xml
@@ -103,7 +103,6 @@
History HD
Disney Junior
Viva Istanbul (Viva Plus)
- Viva Istanbul (Viva Plus)
Carousel
Sport 5 Live HD (58)
HALA TV