recordere.dk forum     Det danske community for hjemmets elektronik og indhold     Siden 2003
<b>Forside</b> Forside > Recordere, afspillere og foto > Microsoft Media Center, MCE og HTPC
  Nye indlæg Nye indlæg  Seneste forum emner Seneste   Seneste forum emner (vindue) Vindue   De emner du deltager i Mine emner RSS Feed - EPG data - nyt program til download
  FAQ FAQ  Søg i forum   Opret ny bruger Opret ny bruger  Log ind Log ind

EPG data - nyt program til download

 Besvar Besvar Side  <1 678910 13>
Forfatter
Besked
rasmuzzen Se dropdown menu
Guld medlem
Guld medlem


Oprettet: 22-Januar-2007
Sted: Denmark
Status: Offline
Point: 913
Funktioner Funktioner   Tak (0) Tak(0)   Citér rasmuzzen Citér  BesvarSvar Direkte link til dette indlæg Sendt: 30-December-2011 kl. 20:53
Gad ikke rigtig projektet da a123.dk gør tricket, det er en viden jeg ikke kan bruge til noget, men læsning af JSON render jeg sikkert ind i igen på et tidspunkt, det var nyt for mig . Forfatteren af xml -> dvbviewer hedder DvbViewer Junkie, han har vist også været her mindes jeg. 
 
Men hvis andre vil igang mod dr.dk's epg så er her lidt kode :
Envir : Framework sættes til destination 3.5. VS2010, kunne ikke finde System.Web.Script.Serialization i 4.0.
 
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.IO;
using System.Net;
using System.Windows.Forms;
using System.Web.Script.Serialization;
 
private String GetHttpStringFromDR(String url)
{
String retur = String.Empty;
StringBuilder sb = new StringBuilder();
// used on each read operation
byte[] buf = new byte[8192];
// prepare the web page we will be asking for
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
// execute the request
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
// we will read data via the response stream
Stream resStream = response.GetResponseStream();
string tempString = null;
int count = 0;
do
{
// fill the buffer with data
count = resStream.Read(buf, 0, buf.Length);
// make sure we read some data
if (count != 0)
{
// translate from bytes to ASCII text
tempString = Encoding.UTF8.GetString(buf, 0, count);
// continue building the string
sb.Append(tempString);
}
}
while (count > 0); // any more data to read?
retur = sb.ToString();
return retur;
}
 
private void Form1_Load(object sender, EventArgs e)
{
string jsonChannels = GetHttpStringFromDR("http://www.dr.dk/tjenester/programoversigt/dbservice.ashx/getChannels?type=tv");
JavaScriptSerializer mySer = new JavaScriptSerializer();
channels mychannels = mySer.Deserialize<channels>(jsonChannels);
dataGridViewchannels.DataSource = mychannels.result;
this.dataGridViewchannels.RowEnter += new System.Windows.Forms.DataGridViewCellEventHandler(this.dataGridViewchannels_RowEnter);
}
 
private void dataGridViewchannels_RowEnter(object sender, DataGridViewCellEventArgs e)
{
String source_url;
source_url = dataGridViewchannels[1, e.RowIndex].Value.ToString();
string jsonEPGOfChannel = GetHttpStringFromDR("http://www.dr.dk/tjenester/programoversigt/dbservice.ashx/getSchedule?channel_source_url=" + source_url + "&broadcastDate=2011-12-29T00:42:57");
JavaScriptSerializer mySer = new JavaScriptSerializer();
EPGofChannelDateTime myEPGofChannelDateTime = mySer.Deserialize<EPGofChannelDateTime>(jsonEPGOfChannel);
dgvEPG.DataSource = myEPGofChannelDateTime.result;
}
 
public class channels
{
public int id { get; set; }
public string word { get; set; }
public List<result> result { get; set; }
public channels()
{
result = new List<result>();
}
}
 
public class result
{
public string name { get; set; }
public string source_url { get; set; }
public string www_url { get; set; }
public bool dr_channel { get; set; }
public string type { get; set; }
public string country_code { get; set; }
public string channel_group { get; set; }
}
 
public class EPGofChannelDateTime
{
public int id { get; set; }
public string word { get; set; }
public List<epgOfChannelDateTimeList> result { get; set; }
public EPGofChannelDateTime()
{
result = new List<epgOfChannelDateTimeList>();
}
}
 
public class epgOfChannelDateTimeList
{
public string pro_title { get; set; }
public string pro_category { get; set; }
public string pro_targetgroup { get; set; }
public string pro_intention { get; set; }
public bool prd_is_own_production { get; set; }
public string prd_prodyear { get; set; }
public string prd_prodcountry { get; set; }
public string prd_genre_code { get; set; }
public string prd_genre_text { get; set; }
public string ppu_title { get; set; }
public string ppu_punchline { get; set; }
public string ppu_description { get; set; }
public string ppu_source_url { get; set; }
public string ppu_timestamp_broadcastdate { get; set; }
public bool ppu_islive { get; set; }
public bool ppu_isrerun { get; set; }
public string ppu_video { get; set; }
public string ppu_audio { get; set; }
public bool ppu_streaming_live { get; set; }
public bool ppu_streaming_od { get; set; }
public string pg_start { get; set; }
public string pg_stop { get; set; }
public string pg_series_name { get; set; }
}
 
Jeg har to datagridviews på formen til output.
Kunne være nogen kan bruge det, eller ihvertfald spare lidt tid med klasse definitioner.
 
Julehilsner til jer.
 


Redigeret af rasmuzzen - 30-December-2011 kl. 20:55
Sendt fra min Commodore64,SONY 55W805BBN + 40D4550 + Hauppauge HVR4000 DVB-S2+T, Hauppauge NOVA-HD-DVB-S2 + en sørens masse diskplads.
Til top
SoerenB Se dropdown menu
Ny bruger
Ny bruger


Oprettet: 22-December-2011
Sted: Danmark
Status: Offline
Point: 4
Funktioner Funktioner   Tak (0) Tak(0)   Citér SoerenB Citér  BesvarSvar Direkte link til dette indlæg Sendt: 31-December-2011 kl. 16:35
Alternativt indeholder RuneDJs EPG reader fuld Java-sourcekode til at læse samme feed fra dr.dk
Til top
rasmuzzen Se dropdown menu
Guld medlem
Guld medlem


Oprettet: 22-Januar-2007
Sted: Denmark
Status: Offline
Point: 913
Funktioner Funktioner   Tak (0) Tak(0)   Citér rasmuzzen Citér  BesvarSvar Direkte link til dette indlæg Sendt: 01-Januar-2012 kl. 11:33
Tak Søren, den kan sikkert også hjælpe nogen
Kan se at der sker lidt omkring den her hvor du også er behjælplig.
 
 
Og kan se ud af jeres lange tråd at dr.dk er en "dynamisk" virksomhed der bytter lidt rundt på deres stier een gang imellem, øv. I har også lidt af det java helvede som jeg døjer med til dagligt som konsulent, deres versions styrring er ikke altid helt i orden, det driller tit. Har aldrig været så glad for noget som jeg er for ms-framework, det driller ikke så meget som det dll helvede man tidligere har været i, da jeg porgrammerede i vb4-6
 
Måske nogen kan bruge linket. Det er jo altid godt at have lidt indspark, eks. hvis dr.dk ændrer deres service, (som vel ikke er så service aktig, de ønskede vel egentlig ikke at vi skal suge deres data, eller hvad ?), som der også står lidt om i et tidligere post. Hvis sourceopfindere evt. ikke har tiden til at rette ved ændringer, kunne der opstå et lignede projekt ala trådstarters. 
Jeg er lidt overrasket over hvor mange kodere der egentlig er her, er det noget der mon ligger op ad det at have interessen for HTPC.
 
Måske en opfordring til at folk retter lidt i deres profiler, og skriver lidt om hvad de laver til dagligt, incl. mig selv. Men Interesser feltet er ikke så langt.


Redigeret af rasmuzzen - 01-Januar-2012 kl. 11:58
Sendt fra min Commodore64,SONY 55W805BBN + 40D4550 + Hauppauge HVR4000 DVB-S2+T, Hauppauge NOVA-HD-DVB-S2 + en sørens masse diskplads.
Til top
kim.t Se dropdown menu
Guld medlem
Guld medlem
Avatar

Oprettet: 26-Juli-2004
Sted: Silkeborg
Status: Offline
Point: 3834
Funktioner Funktioner   Tak (0) Tak(0)   Citér kim.t Citér  BesvarSvar Direkte link til dette indlæg Sendt: 02-Januar-2012 kl. 17:18
Thumbs Up Hold da op. Det program som linkes til kan jo bruges på en Mac sammen med eyeTV da det er skrevt i java Big smile
Fedt - er ved at lave et script så det køres dagligt og hentes ind i eyeTV


Redigeret af kim.t - 02-Januar-2012 kl. 17:19
Til top
SoerenB Se dropdown menu
Ny bruger
Ny bruger


Oprettet: 22-December-2011
Sted: Danmark
Status: Offline
Point: 4
Funktioner Funktioner   Tak (0) Tak(0)   Citér SoerenB Citér  BesvarSvar Direkte link til dette indlæg Sendt: 02-Januar-2012 kl. 17:32
Ja. Jeg vil dog også tro at C# programmet fra nærværende tråd kan afvikles med mono på en mac. Det har jeg haft held til et par gange.
Til top
Stub Se dropdown menu
Bruger
Bruger
Avatar

Oprettet: 06-Marts-2006
Sted: Denmark
Status: Offline
Point: 177
Funktioner Funktioner   Tak (0) Tak(0)   Citér Stub Citér  BesvarSvar Direkte link til dette indlæg Sendt: 05-Januar-2012 kl. 10:03
Jeg kører MCE i w7 og får jo allerede nu epg fra DR (tror jeg nok). Jeg har ikke rettet i MCE vedr. epg og ser kun FTA kanaler via antenne. Hvad får man så ud af at bruge epg grabber og big screen epg ?
Til top
rasmuzzen Se dropdown menu
Guld medlem
Guld medlem


Oprettet: 22-Januar-2007
Sted: Denmark
Status: Offline
Point: 913
Funktioner Funktioner   Tak (0) Tak(0)   Citér rasmuzzen Citér  BesvarSvar Direkte link til dette indlæg Sendt: 05-Januar-2012 kl. 10:42
Du får alt det andet, eks. viasat epg, på sat har de en eller anden tosset måde som ikke er som de andre gør, her får man så kun den udsendelse der er der nu og den de sender næste gang.
Har har dr.dk og ontv osv. gjort det hårde arbejde, og vi skyder det så ind fra siden i databaserne via forskellige apps.
Men ja, alm. epg er i orden på de kanaler du har listet op.
Sendt fra min Commodore64,SONY 55W805BBN + 40D4550 + Hauppauge HVR4000 DVB-S2+T, Hauppauge NOVA-HD-DVB-S2 + en sørens masse diskplads.
Til top
kim.t Se dropdown menu
Guld medlem
Guld medlem
Avatar

Oprettet: 26-Juli-2004
Sted: Silkeborg
Status: Offline
Point: 3834
Funktioner Funktioner   Tak (0) Tak(0)   Citér kim.t Citér  BesvarSvar Direkte link til dette indlæg Sendt: 05-Januar-2012 kl. 11:27
Oprindeligt skrevet af Stub Stub skrev:

Jeg kører MCE i w7 og får jo allerede nu epg fra DR (tror jeg nok). Jeg har ikke rettet i MCE vedr. epg og ser kun FTA kanaler via antenne. Hvad får man så ud af at bruge epg grabber og big screen epg ?
EPG på min MacMini via eyeTV kørte ikke stabilt. Derfor søgte jeg efter et gratis alternativ. ontv.dk med deres abb. synes jeg ikke jeg vil betale for for at få EPG.
Til top
Wind Diesel Se dropdown menu
Junior bruger
Junior bruger
Avatar

Oprettet: 02-September-2005
Sted: Denmark
Status: Offline
Point: 31
Funktioner Funktioner   Tak (0) Tak(0)   Citér Wind Diesel Citér  BesvarSvar Direkte link til dette indlæg Sendt: 25-Januar-2012 kl. 17:49
Oprindeligt skrevet af kim.t kim.t skrev:

Thumbs Up Hold da op. Det program som linkes til kan jo bruges på en Mac sammen med eyeTV da det er skrevt i java Big smile
Fedt - er ved at lave et script så det køres dagligt og hentes ind i eyeTV


Hvordan går det med det projekt ? 

Mit tvtv.co.uk EPG abbonement er netop udløbet, og jeg kan ikke få lov til at udvide det - så nu er jeg på herrens mark, og mangler virkelig EPG til EyeTV.

Kind Regards

Søren Wind
Til top
kim.t Se dropdown menu
Guld medlem
Guld medlem
Avatar

Oprettet: 26-Juli-2004
Sted: Silkeborg
Status: Offline
Point: 3834
Funktioner Funktioner   Tak (0) Tak(0)   Citér kim.t Citér  BesvarSvar Direkte link til dette indlæg Sendt: 25-Januar-2012 kl. 18:16
Oprindeligt skrevet af Wind Diesel Wind Diesel skrev:

Oprindeligt skrevet af kim.t kim.t skrev:

Thumbs Up Hold da op. Det program som linkes til kan jo bruges på en Mac sammen med eyeTV da det er skrevt i java Big smile
Fedt - er ved at lave et script så det køres dagligt og hentes ind i eyeTV


Hvordan går det med det projekt ? 

Mit tvtv.co.uk EPG abbonement er netop udløbet, og jeg kan ikke få lov til at udvide det - så nu er jeg på herrens mark, og mangler virkelig EPG til EyeTV.

Det kører fint. Mit script er her : http://dl.dropbox.com/u/6308565/DR%20EPG.scpt - er sat til at køre hver dag kl. 17. Den skriver en fin log i Console programmet med hvad den henter m.m.
Problemet med data fra DR er at der er kluder i datoen når udsendelsen går hen over midnat. Så der er typisk huller omkring midnat. Jeg har også oplavet at et program rykker til en anden dato. Fatter ikke hvorfor de ikke får det rettet. Problemet er beskrevt lidligere i denne tråd.


Redigeret af kim.t - 25-Januar-2012 kl. 18:16
Til top
Wind Diesel Se dropdown menu
Junior bruger
Junior bruger
Avatar

Oprettet: 02-September-2005
Sted: Denmark
Status: Offline
Point: 31
Funktioner Funktioner   Tak (0) Tak(0)   Citér Wind Diesel Citér  BesvarSvar Direkte link til dette indlæg Sendt: 25-Januar-2012 kl. 18:29
Lækkert !  - Hvordan trigger du scriptet ?
Kind Regards

Søren Wind
Til top
kim.t Se dropdown menu
Guld medlem
Guld medlem
Avatar

Oprettet: 26-Juli-2004
Sted: Silkeborg
Status: Offline
Point: 3834
Funktioner Funktioner   Tak (0) Tak(0)   Citér kim.t Citér  BesvarSvar Direkte link til dette indlæg Sendt: 25-Januar-2012 kl. 18:34
Smid den ind i iCal. Altså opret en aftale/event og under Alert siger man "run script" og fortæller hvilket script der skal køres.
Til top
 
 Besvar Besvar Side  <1 678910 13>
 
Skift forum Forum-tilladelser Se dropdown menu