diff --git a/README.md b/README.md
index 91204e85..43dd482a 100644
--- a/README.md
+++ b/README.md
@@ -13,6 +13,7 @@ To load a program guide, all you need to do is copy the link to one of the guide
ontvtonight.com | en | 122 | https://iptv-org.github.io/epg/guides/ontvtonight.com.guide.xml |
programme-tv.net | fr | 266 | https://iptv-org.github.io/epg/guides/programme-tv.net.guide.xml |
+ mediaset.it | it | 16 | https://iptv-org.github.io/epg/guides/mediaset.it.guide.xml |
tv.yandex.ru | ru | 378 | https://iptv-org.github.io/epg/guides/tv.yandex.ru.guide.xml |
diff --git a/sites/mediaset.it.channels.xml b/sites/mediaset.it.channels.xml
new file mode 100755
index 00000000..23bb9994
--- /dev/null
+++ b/sites/mediaset.it.channels.xml
@@ -0,0 +1,21 @@
+
+
+
+ Canale 5
+ Focus
+ Italia 1
+ Italia 2
+ La 5
+ Boing Italia
+ Mya
+ Iris
+ Mediaset Extra
+ Premium Action
+ Cartoonito Italia
+ 20 Mediaset
+ Premium Crime
+ Top Crime
+ Rete 4
+ TGCOM24
+
+
\ No newline at end of file
diff --git a/sites/mediaset.it.config.js b/sites/mediaset.it.config.js
new file mode 100644
index 00000000..82d71f01
--- /dev/null
+++ b/sites/mediaset.it.config.js
@@ -0,0 +1,50 @@
+const dayjs = require('dayjs')
+const utc = require('dayjs/plugin/utc')
+const customParseFormat = require('dayjs/plugin/customParseFormat')
+
+dayjs.extend(utc)
+dayjs.extend(customParseFormat)
+
+module.exports = {
+ lang: 'it',
+ site: 'mediaset.it',
+ channels: 'mediaset.it.channels.xml',
+ output: '.gh-pages/guides/mediaset.it.guide.xml',
+ url: function ({ date, channel }) {
+ return `http://www.mediaset.it/guidatv/inc/canali/${date.format('YYYYMM')}/${date.format(
+ 'YYYYMMDD'
+ )}_${channel.site_id}.sjson`
+ },
+ parser: function ({ content, date }) {
+ const programs = []
+ if (!content.events) return programs
+
+ content.events.forEach(item => {
+ if (item.title && item.startTime && item.endTime) {
+ const start = dayjs
+ .utc(item.startTime, 'HH:mm')
+ .set('D', date.get('D'))
+ .set('M', date.get('M'))
+ .set('y', date.get('y'))
+ .toString()
+
+ const stop = dayjs
+ .utc(item.endTime, 'HH:mm')
+ .set('D', date.get('D'))
+ .set('M', date.get('M'))
+ .set('y', date.get('y'))
+ .toString()
+
+ programs.push({
+ title: item.displayTitle || item.title,
+ description: item.description,
+ category: item.genere,
+ start,
+ stop
+ })
+ }
+ })
+
+ return programs
+ }
+}