當前位置: 首頁>>代碼示例>>Golang>>正文


Golang scrape.Station函數代碼示例

本文整理匯總了Golang中purl/mro/name/recorder/radio/scrape.Station函數的典型用法代碼示例。如果您正苦於以下問題:Golang Station函數的具體用法?Golang Station怎麽用?Golang Station使用的例子?那麽, 這裏精選的函數代碼示例或許可以為您提供幫助。


在下文中一共展示了Station函數的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。

示例1: TestParseBroadcastWithImage1

func TestParseBroadcastWithImage1(t *testing.T) {
	f, err := os.Open("testdata/2015-11-16T1605-b2-sendung.html")
	assert.NotNil(t, f, "ouch")
	assert.Nil(t, err, "ouch")

	s := Station("b2")
	t0 := broadcastURL{
		TimeURL: r.TimeURL{
			Time:    time.Date(2015, time.November, 16, 16, 5, 0, 0, localLoc),
			Source:  *r.MustParseURL("http://www.br.de/radio/bayern2/programmkalender/ausstrahlung-498522.html"),
			Station: r.Station(*s),
		},
		Title: "Nachrichten, Wetter",
	}

	// http://rec.mro.name/stations/b2/2015/11/16/1605%20Eins%20zu%20Eins.%20Der%20Talk
	bcs, err := t0.parseBroadcastReader(f, nil)
	assert.Nil(t, err, "ouch")
	assert.Equal(t, 1, len(bcs), "ouch")
	bc := bcs[0]
	assert.Equal(t, "b2", bc.Station.Identifier, "ouch: Station.Identifier")
	assert.Equal(t, "Stefan Parrisius im Gespräch mit Yvonne Hofstetter, Big Data Managing Director\nWiederholung um 22.05 Uhr\nAls Podcast verfügbar\n\nErfahrungen und Einsichten, einschneidende Erlebnisse und große Erfolge: Biografische Gespräche mit Menschen, die eine spannende Lebensgeschichte oder einen außergewöhnlichen Beruf haben.", *bc.Description, "ouch: Description")
	//
	assert.NotNil(t, bc.Image, "ouch: Image")
	assert.Equal(t, "http://www.br.de/radio/bayern2/gesellschaft/eins-zu-eins-der-talk/yvonne-hofstetter-110~_v-img__16__9__m_-4423061158a17f4152aef84861ed0243214ae6e7.jpg?version=72771", bc.Image.String(), "ouch: Image")
}
開發者ID:mro,項目名稱:internet-radio-recorder,代碼行數:26,代碼來源:br_test.go

示例2: TestUnmarshalBroadcasts0

func TestUnmarshalBroadcasts0(t *testing.T) {
	f, err := os.Open("testdata/2016-07-25T0945-program.json")
	assert.NotNil(t, f, "ouch")
	assert.Nil(t, err, "ouch")

	s := Station("b3")
	u := calItemRangeURL(r.TimeURL{
		Time:    time.Now(),
		Source:  *s.ProgramURL,
		Station: r.Station(*s),
	})

	res, err := u.parseBroadcastsReader(f, nil)
	assert.Equal(t, 3, len(res), "53")

	bc := res[0]
	assert.Nil(t, err, "ouch")
	assert.Equal(t, "b3", bc.Station.Identifier, "ouch: Station.Identifier")
	assert.Equal(t, "Die Frühaufdreher", bc.Title, "ouch: Title")
	assert.Equal(t, "http://www.br.de/mediathek/audio/bayern3-audio-livestream-100~radioplayer.json", bc.Source.String(), "ouch: Source")
	assert.NotNil(t, bc.Language, "ouch: Language")
	assert.Equal(t, "de", *bc.Language, "ouch: Language")
	assert.Nil(t, bc.TitleSeries, "ouch: TitleSeries")
	assert.Nil(t, bc.TitleEpisode, "ouch: TitleEpisode")
	assert.Equal(t, "2016-07-25T05:00:00+02:00", bc.Time.Format(time.RFC3339), "ouch: Time")
	assert.Equal(t, "2016-07-25T09:00:00+02:00", bc.DtEnd.Format(time.RFC3339), "ouch: DtEnd")
	assert.Nil(t, bc.Subject, "ouch: Subject")
	assert.Nil(t, bc.Modified, "ouch: Modified")
	assert.Equal(t, "Bayerischer Rundfunk", *bc.Author, "ouch: Author")
	assert.Equal(t, "", *bc.Description, "ouch: Description")
	assert.Nil(t, bc.Image, "ouch: Image")
}
開發者ID:mro,項目名稱:internet-radio-recorder,代碼行數:32,代碼來源:b3_test.go

示例3: TestUnmarshalBroadcastsFromJSON

func TestUnmarshalBroadcastsFromJSON(t *testing.T) {
	f, err := os.Open("testdata/2016-07-25T1207-program.json")
	assert.NotNil(t, f, "ouch")
	assert.Nil(t, err, "ouch")

	s := Station("wdr5")
	u := timeURL(r.TimeURL{
		Time:    time.Date(2015, time.October, 25, 0, 0, 0, 0, s.TimeZone),
		Source:  *r.MustParseURL("http://www.wdr.de/programmvorschau/ajax/wdr5/uebersicht/2016-07-25/"),
		Station: r.Station(*s),
	})

	res, err := u.parseBroadcastsFromJsonReader(f, nil)
	assert.Equal(t, 86, len(res), "53")
	bc := res[0]

	assert.Nil(t, err, "ouch")
	assert.Equal(t, "wdr5", bc.Station.Identifier, "ouch: Station.Identifier")
	assert.Equal(t, "WDR Aktuell", bc.Title, "ouch: Title")
	assert.Equal(t, "http://www.wdr.de/programmvorschau/wdr5/sendung/2016-07-25/40944229/wdr-aktuell.html", bc.Source.String(), "ouch: Source")
	assert.NotNil(t, bc.Language, "ouch: Language")
	assert.Equal(t, "de", *bc.Language, "ouch: Language")
	assert.Nil(t, bc.TitleSeries, "ouch: TitleSeries")
	assert.Nil(t, bc.TitleEpisode, "ouch: TitleEpisode")
	assert.Equal(t, "2016-07-25T00:00:00+02:00", bc.Time.Format(time.RFC3339), "ouch: Time")
	assert.Equal(t, "2016-07-25T00:05:00+02:00", bc.DtEnd.Format(time.RFC3339), "ouch: DtEnd")
	assert.Nil(t, bc.Subject, "ouch: Subject")
	assert.Nil(t, bc.Modified, "ouch: Modified")
	assert.Nil(t, bc.Author, "ouch: Author")
	assert.Equal(t, "", *bc.Description, "ouch: Description")
	assert.Nil(t, bc.Image, "ouch: Image")
}
開發者ID:mro,項目名稱:internet-radio-recorder,代碼行數:32,代碼來源:wdr_test.go

示例4: Scrape

// queue one scrape job: now!
func (s *station) Scrape() (jobs []r.Scraper, results []r.Broadcaster, err error) {
	i := calItemRangeURL(r.TimeURL{
		Time:    time.Now(),
		Source:  *s.ProgramURL,
		Station: r.Station(*s),
	})
	jobs = append(jobs, &i)
	return
}
開發者ID:mro,項目名稱:internet-radio-recorder,代碼行數:10,代碼來源:b3.go

示例5: dayURLForDate

func (s *station) dayURLForDate(day time.Time) (ret *timeURL, err error) {
	r := timeURL(r.TimeURL{
		Time:    time.Date(day.Year(), day.Month(), day.Day(), 0, 0, 0, 0, s.TimeZone),
		Source:  *r.MustParseURL(s.ProgramURL.String() + day.Format("?daterequest=2006-01-02")),
		Station: r.Station(*s),
	})
	ret = &r
	// err = errors.New("Not ümplemented yet.")
	return
}
開發者ID:mro,項目名稱:internet-radio-recorder,代碼行數:10,代碼來源:m945.go

示例6: calendarItemRangeURLForTime

///////////////////////////////////////////////////////////////////////
// https://www.br-klassik.de/programm/radio/radiosendungen-100~calendar-detail-inner.jsp?date=2016-01-11
// https://www.br-klassik.de/programm/radio/radiosendungen-100~calendarItems.jsp?from=2016-01-10T23:59:59&to=2016-01-11T00:10:00&rows=800
func (s *station) calendarItemRangeURLForTime(t time.Time) (ret *calItemRangeURL, err error) {
	if nil == s {
		panic("aua")
	}
	t0 := t.Add(time.Minute)
	t1 := t0.Add(time.Hour)
	r := calItemRangeURL(r.TimeURL{
		Time:    t0,
		Source:  *r.MustParseURL("https://www.br-klassik.de/programm/radio/radiosendungen-100~calendarItems.jsp?rows=800" + t0.Format("&from=2006-01-02T15:04:05") + t1.Format("&to=2006-01-02T15:04:05")),
		Station: r.Station(*s),
	})
	ret = &r
	// err = errors.New("Not ümplemented yet.")
	return
}
開發者ID:mro,項目名稱:internet-radio-recorder,代碼行數:18,代碼來源:b4.go

示例7: TestParseScheduleForBroadcasts

func TestParseScheduleForBroadcasts(t *testing.T) {
	f, err := os.Open("testdata/2015-10-21-b2-program.html")
	assert.NotNil(t, f, "ouch")
	assert.Nil(t, err, "ouch")

	s := Station("b2")
	u := timeURL{
		Time:    time.Date(2015, time.October, 21, 5, 0, 0, 0, localLoc),
		Source:  *r.MustParseURL("http://www.br.de/radio/bayern2/programmkalender/programmfahne102~_date-2015-10-21_-5ddeec3fc12bdd255a6c45c650f068b54f7b010b.html"),
		Station: r.Station(*s),
	}

	a, err := u.parseBroadcastURLsReader(f, nil)
	assert.Equal(t, 129, len(a), "ouch: len")
	assert.Equal(t, "b2", a[0].TimeURL.Station.Identifier, "ouch: ")
	assert.Equal(t, "2015-10-20T05:00:00+02:00", a[0].Time.Format(time.RFC3339), "ouch: ")
	assert.Equal(t, "2015-10-23T04:58:00+02:00", a[128].Time.Format(time.RFC3339), "ouch: ")
}
開發者ID:mro,項目名稱:internet-radio-recorder,代碼行數:18,代碼來源:br_test.go

示例8: TestParseBroadcast_866264

func TestParseBroadcast_866264(t *testing.T) {
	{
		t0, _ := time.Parse(time.RFC3339, "2016-11-27T23:05:00+01:00")
		assert.Equal(t, "2016-11-27T23:05:00+01:00", t0.Format(time.RFC3339), "oha")
	}
	f, err := os.Open("testdata/2016-11-27T2305-b4-ausstrahlung-866264.html")
	assert.NotNil(t, f, "ouch")
	assert.Nil(t, err, "ouch")

	s := Station("b4")

	t0 := broadcastURL{
		BroadcastURL: r.BroadcastURL{
			TimeURL: r.TimeURL{
				Time:    time.Date(2016, time.November, 27, 23, 5, 0, 0, localLoc),
				Source:  *r.MustParseURL("https://www.br-klassik.de/programm/radio/ausstrahlung-866264.html"),
				Station: r.Station(*s),
			},
			Title: "Musik der Welt",
		},
		Image: r.MustParseURL("https://www.br-klassik.de/pierre-dominique-ponnelle-102~_h-558_v-img__16__9__xl_w-994_-e1d284d92729d9396a907e303225e0f2d9fa53b4.jpg?version=1c52e"),
	}
	bc, err := t0.parseBroadcastReader(f, nil)
	assert.Nil(t, err, "ouch")
	assert.Equal(t, "b4", bc.Station.Identifier, "ouch: Station.Identifier")
	assert.Equal(t, "Musik der Welt", bc.Title, "ouch: Title")
	assert.Equal(t, "https://www.br-klassik.de/programm/radio/ausstrahlung-866264.html", bc.Source.String(), "ouch: Source")
	assert.NotNil(t, bc.Language, "ouch: Language")
	assert.Equal(t, "de", *bc.Language, "ouch: Language")
	assert.Equal(t, t0.Title, bc.Title, "ouch: Title")
	assert.Equal(t, "Aus dem Studio Franken:", *bc.TitleSeries, "ouch: TitleSeries")
	assert.Equal(t, "Minsk, Ufa, Taschkent", *bc.TitleEpisode, "ouch: TitleEpisode")
	assert.Equal(t, "2016-11-27T23:05:00+01:00", bc.Time.Format(time.RFC3339), "ouch: Time")
	assert.Equal(t, "2016-11-28T00:00:00+01:00", bc.DtEnd.Format(time.RFC3339), "ouch: DtEnd")
	assert.Equal(t, "https://www.br-klassik.de/themen/jazz-und-weltmusik/musik-der-welt-102.html", bc.Subject.String(), "ouch: Subject")
	assert.Equal(t, "2016-11-24T09:15:20+01:00", bc.Modified.Format(time.RFC3339), "ouch: Modified")
	assert.Equal(t, "Bayerischer Rundfunk", *bc.Author, "ouch: Author")
	assert.NotNil(t, bc.Description, "ouch: Description")
	assert.Equal(t, "Fremde Länder, fremde Klänge in Features, Reportagen und Interviews. Ein internationales Autoren-Team präsentiert Musik rund um den Globus, vom Porträt bis zum Konzertmitschnitt.\n\nDie Stationen seiner Karriere haben einen exotischen Klang. Er war Chefdirigent in Minsk. Er kennt die Opernhäuser von Bischkek, Almaty oder Baku wie seine Westentasche. Er hat die Staatsorchester von Armenien, Aserbaidschan und Georgien geleitet. Dabei hat es Pierre-Dominique Ponnelle, Sohn des berühmten Opernregisseurs Jean-Pierre Ponnelle, nach Lehrjahren bei Herbert von Karajan und Otmar Suitner eher durch Zufall gen Osten verschlagen. Grau in Grau hatte er sich diese Welt dort vorgestellt - und war dann fasziniert, gepackt von der Buntheit, der Vielfalt, der musikalischen Qualität, die er in den Ländern der ehemaligen Sowjetunion vorfand. Seine Reisen zu fremden Ländern und Menschen haben inzwischen auch in einer Reihe von Kompositionen ihren Niederschlag gefunden: Da gibt es eine liebevolle Hommage an den armenischen Maler Minas Avetisyan oder ein Streichquartett, das zentralasiatische Melodien verarbeitet. Thorsten Preuß sprach mit dem weitgereisten Komponisten und Dirigenten.\n\nDie musikalischen Reisen des Komponisten und Dirigenten Pierre-Dominique Ponnelle\nVon Thorsten Preuß", *bc.Description, "ouch: Description")
	assert.NotNil(t, bc.Image, "ouch: Image")
	assert.Equal(t, "https://www.br-klassik.de/pierre-dominique-ponnelle-102~_h-558_v-img__16__9__xl_w-994_-e1d284d92729d9396a907e303225e0f2d9fa53b4.jpg?version=1c52e", bc.Image.String(), "ouch: Image")
}
開發者ID:mro,項目名稱:internet-radio-recorder,代碼行數:42,代碼來源:b4_test.go

示例9: TestParseBroadcast_914548

func TestParseBroadcast_914548(t *testing.T) {
	{
		t0, _ := time.Parse(time.RFC3339, "2016-11-27T20:30:00+01:00")
		assert.Equal(t, "2016-11-27T20:30:00+01:00", t0.Format(time.RFC3339), "oha")
	}
	f, err := os.Open("testdata/2016-11-27T2030-b4-ausstrahlung-914548.html")
	assert.NotNil(t, f, "ouch")
	assert.Nil(t, err, "ouch")

	s := Station("b4")

	t0 := broadcastURL{
		BroadcastURL: r.BroadcastURL{
			TimeURL: r.TimeURL{
				Time:    time.Date(2016, time.November, 27, 20, 30, 0, 0, localLoc),
				Source:  *r.MustParseURL("https://www.br-klassik.de/programm/radio/ausstrahlung-914548.html"),
				Station: r.Station(*s),
			},
			Title: "Intermezzo",
		},
		Image: r.MustParseURL("https://www.br-klassik.de/programm/radio/logo106~_h-558_v-img__16__9__xl_w-994_-e1d284d92729d9396a907e303225e0f2d9fa53b4.jpg?version=78f3c"),
	}
	bc, err := t0.parseBroadcastReader(f, nil)
	assert.Nil(t, err, "ouch")
	assert.Equal(t, "b4", bc.Station.Identifier, "ouch: Station.Identifier")
	assert.Equal(t, "Intermezzo", bc.Title, "ouch: Title")
	assert.Equal(t, "https://www.br-klassik.de/programm/radio/ausstrahlung-914548.html", bc.Source.String(), "ouch: Source")
	assert.NotNil(t, bc.Language, "ouch: Language")
	assert.Equal(t, "de", *bc.Language, "ouch: Language")
	assert.Equal(t, t0.Title, bc.Title, "ouch: Title")
	assert.Equal(t, "", *bc.TitleSeries, "ouch: TitleSeries")
	assert.Nil(t, bc.TitleEpisode, "ouch: TitleEpisode")
	assert.Equal(t, "2016-11-27T20:30:00+01:00", bc.Time.Format(time.RFC3339), "ouch: Time")
	assert.Equal(t, "2016-11-27T21:00:00+01:00", bc.DtEnd.Format(time.RFC3339), "ouch: DtEnd")
	assert.Nil(t, bc.Subject, "ouch: Subject")
	assert.Equal(t, "2016-11-25T13:15:07+01:00", bc.Modified.Format(time.RFC3339), "ouch: Modified")
	assert.Equal(t, "Bayerischer Rundfunk", *bc.Author, "ouch: Author")
	assert.NotNil(t, bc.Description, "ouch: Description")
	assert.Equal(t, "Ernst von Gemmingen: Violinkonzert Nr. 1 A-Dur (Kolja Lessing, Violine; Münchner Rundfunkorchester: Ulf Schirmer)", *bc.Description, "ouch: Description")
	assert.NotNil(t, bc.Image, "ouch: Image")
	assert.Equal(t, "https://www.br-klassik.de/programm/radio/logo106~_h-558_v-img__16__9__xl_w-994_-e1d284d92729d9396a907e303225e0f2d9fa53b4.jpg?version=78f3c", bc.Image.String(), "ouch: Image")
}
開發者ID:mro,項目名稱:internet-radio-recorder,代碼行數:42,代碼來源:b4_test.go

示例10: TestUnmarshalBroadcastFromHTML_2

func TestUnmarshalBroadcastFromHTML_2(t *testing.T) {
	f, err := os.Open("testdata/2016-08-21T1800-sendung.html")
	assert.NotNil(t, f, "ouch")
	assert.Nil(t, err, "ouch")

	s := Station("wdr5")
	lang := "de"
	dtEnd, _ := time.Parse(time.RFC3339, "2016-08-21T18:05:00+02:00")
	bc0 := broadcast(r.Broadcast{
		BroadcastURL: r.BroadcastURL{
			TimeURL: r.TimeURL{
				Time:    time.Date(2016, time.August, 21, 18, 0, 0, 0, s.TimeZone),
				Source:  *r.MustParseURL("http://www.wdr.de/programmvorschau/wdr5/sendung/2016-07-23/40920025/krimi-am-samstag.html"),
				Station: r.Station(*s),
			},
			Title: "Krimi am Samstag",
		},
		Language: &lang,
		DtEnd:    &dtEnd,
	})

	res, err := bc0.parseBroadcastFromHtmlReader(f, nil)
	assert.Equal(t, 1, len(res), "96")
	bc := res[0]

	assert.Nil(t, err, "ouch")
	assert.Equal(t, "wdr5", bc.Station.Identifier, "ouch: Station.Identifier")
	assert.Equal(t, "Krimi am Samstag", bc.Title, "ouch: Title")
	assert.Equal(t, "http://www.wdr.de/programmvorschau/wdr5/sendung/2016-07-23/40920025/krimi-am-samstag.html", bc.Source.String(), "ouch: Source")
	assert.NotNil(t, bc.Language, "ouch: Language")
	assert.Equal(t, "de", *bc.Language, "ouch: Language")
	assert.Nil(t, bc.TitleSeries, "ouch: TitleSeries")
	assert.Nil(t, bc.TitleEpisode, "ouch: TitleEpisode")
	assert.Equal(t, "2016-08-21T18:00:00+02:00", bc.Time.Format(time.RFC3339), "ouch: Time")
	assert.Equal(t, "2016-08-21T18:05:00+02:00", bc.DtEnd.Format(time.RFC3339), "ouch: DtEnd")
	assert.Nil(t, bc.Subject, "ouch: Subject")
	assert.Nil(t, bc.Modified, "ouch: Modified")
	assert.Equal(t, "WDR", *bc.Author, "ouch: Author")
	assert.Equal(t, "", *bc.Description, "ouch: Description")
	assert.Nil(t, bc.Image, "ouch: Image")
}
開發者ID:mro,項目名稱:internet-radio-recorder,代碼行數:41,代碼來源:wdr_test.go

示例11: TestUnmarshalBroadcastFromHTML_0

func TestUnmarshalBroadcastFromHTML_0(t *testing.T) {
	f, err := os.Open("testdata/2016-07-23T1705-sendung.html")
	assert.NotNil(t, f, "ouch")
	assert.Nil(t, err, "ouch")

	s := Station("wdr5")
	lang := "de"
	dtEnd, _ := time.Parse(time.RFC3339, "2016-07-23T18:00:00+02:00")
	bc0 := broadcast(r.Broadcast{
		BroadcastURL: r.BroadcastURL{
			TimeURL: r.TimeURL{
				Time:    time.Date(2016, time.July, 23, 17, 5, 0, 0, s.TimeZone),
				Source:  *r.MustParseURL("http://www.wdr.de/programmvorschau/wdr5/sendung/2016-07-23/40920025/krimi-am-samstag.html"),
				Station: r.Station(*s),
			},
			Title: "Krimi am Samstag",
		},
		Language: &lang,
		DtEnd:    &dtEnd,
	})

	res, err := bc0.parseBroadcastFromHtmlReader(f, nil)
	assert.Equal(t, 1, len(res), "96")
	bc := res[0]

	assert.Nil(t, err, "ouch")
	assert.Equal(t, "wdr5", bc.Station.Identifier, "ouch: Station.Identifier")
	assert.Equal(t, "Krimi am Samstag", bc.Title, "ouch: Title")
	assert.Equal(t, "http://www.wdr.de/programmvorschau/wdr5/sendung/2016-07-23/40920025/krimi-am-samstag.html", bc.Source.String(), "ouch: Source")
	assert.NotNil(t, bc.Language, "ouch: Language")
	assert.Equal(t, "de", *bc.Language, "ouch: Language")
	assert.Nil(t, bc.TitleSeries, "ouch: TitleSeries")
	assert.Equal(t, "Der Knochenmann", *bc.TitleEpisode, "ouch: TitleEpisode")
	assert.Equal(t, "2016-07-23T17:05:00+02:00", bc.Time.Format(time.RFC3339), "ouch: Time")
	assert.Equal(t, "2016-07-23T18:00:00+02:00", bc.DtEnd.Format(time.RFC3339), "ouch: DtEnd")
	assert.Equal(t, "http://www1.wdr.de/radio/wdr5/sendungen/krimi-am-samstag/uebersicht-krimi-am-samstag100.html", bc.Subject.String(), "ouch: Subject")
	assert.Nil(t, bc.Modified, "ouch: Modified")
	assert.Equal(t, "WDR", *bc.Author, "ouch: Author")
	assert.Equal(t, "Von Wolf Haas\nKomposition: Otto Lechner\nBearbeitung und Regie: Götz Fritsch\nHaas: Wolfram Berger\nBrenner: Erwin Steinhauer\nLöschenkohl: Peter Simonischek\nFerdl: Peter Strauß\nKellnerin: Anna Mertin\nMilovic: Stefan Terdy\nPaul Löschenkohl: Ernst Prassel\nPeter Nidetzky: Peter Nidetzky\nJacky: Harald Pichlhöfer\nRothaarige: Brigitte Soucek\nPalfinger: Erhard Koren\nSchwester: Brigitte Karner\nKrennek: Peter Uray\nHelene: Michou Friesz\nFrau Trummer: Gerti Pall\nKellnerin: Anne Mertin\nFerner wirken mit: Alex Schoeler-Haring, Stefan Puntigam, Ursula\nMihelic-Korp, Johannes Monschein, Netta Goldfarb, Heinrich\nHerki-Hoefler, Horst Klaus, Hertha Block, Friedrich Weidisch, Edith\nUnger, Josef Safranek und Margaret Reschreiter\nMusiker: Georg Graf, Saxofon, Klarinette und Oboe; Herbert Reisinger und\nJoão de Bruçó, Schlagzeug; Anton Burger, Geige; Max Nagl, Saxofon\nAufnahme ORF/MDR\n\nJetzt ist schon wieder was passiert. Privatdetektiv Brenner ist erneut im Einsatz. Krimiautor Wolf Haas schickt ihn diesmal zum wenig idyllischen Grillkönig in die Steiermark - und lässt dabei nicht nur Brathähnchen um Kopf und Kragen fürchten.", *bc.Description, "ouch: Description")
	assert.Nil(t, bc.Image, "ouch: Image")
}
開發者ID:mro,項目名稱:internet-radio-recorder,代碼行數:41,代碼來源:wdr_test.go

示例12: TestUnmarshalBroadcastFromHTML_4

func TestUnmarshalBroadcastFromHTML_4(t *testing.T) {
	f, err := os.Open("testdata/2016-08-21T2305-sendung.html")
	assert.NotNil(t, f, "ouch")
	assert.Nil(t, err, "ouch")

	s := Station("wdr5")
	lang := "de"
	dtEnd, _ := time.Parse(time.RFC3339, "2016-08-22T00:00:00+02:00")
	bc0 := broadcast(r.Broadcast{
		BroadcastURL: r.BroadcastURL{
			TimeURL: r.TimeURL{
				Time:    time.Date(2016, time.August, 21, 23, 5, 0, 0, s.TimeZone),
				Source:  *r.MustParseURL("http://www.wdr.de/programmvorschau/wdr5/sendung/2016-08-21/41025663/der-wdr-5-literatursommer.html"),
				Station: r.Station(*s),
			},
			Title: "Der WDR 5 Literatursommer",
		},
		Language: &lang,
		DtEnd:    &dtEnd,
	})

	res, err := bc0.parseBroadcastFromHtmlReader(f, nil)
	assert.Equal(t, 1, len(res), "262")
	bc := res[0]

	assert.Nil(t, err, "ouch")
	assert.Equal(t, "wdr5", bc.Station.Identifier, "ouch: Station.Identifier")
	assert.Equal(t, "Der WDR 5 Literatursommer", bc.Title, "ouch: Title")
	assert.Equal(t, "http://www.wdr.de/programmvorschau/wdr5/sendung/2016-08-21/41025663/der-wdr-5-literatursommer.html", bc.Source.String(), "ouch: Source")
	assert.NotNil(t, bc.Language, "ouch: Language")
	assert.Equal(t, "de", *bc.Language, "ouch: Language")
	assert.Nil(t, bc.TitleSeries, "ouch: TitleSeries")
	assert.Equal(t, "Michael Kumpfmüller gibt Erziehungsratschläge", *bc.TitleEpisode, "ouch: TitleEpisode")
	assert.Equal(t, "2016-08-21T23:05:00+02:00", bc.Time.Format(time.RFC3339), "ouch: Time")
	assert.Equal(t, "2016-08-22T00:00:00+02:00", bc.DtEnd.Format(time.RFC3339), "ouch: DtEnd")
	assert.Equal(t, "http://www1.wdr.de/radio/wdr5/sendungen/literatursommer/uebersicht-literatursommer102.html", bc.Subject.String(), "ouch: Subject")
	assert.Nil(t, bc.Modified, "ouch: Modified")
	assert.Equal(t, "WDR", *bc.Author, "ouch: Author")
	assert.Equal(t, "bis 24:00 Uhr\nWiederholung: 23.08. 03.05 Uhr\n\n„Die Erziehung des Mannes“ hat sich Michael Kumpfmüller in seinem jüngsten Roman zur Aufgabe gemacht. Am Beispiel von Georg, dem Protagonisten der Geschichte,\n\nerzählt er von den Fallstricken, mit denen Männer in Liebesdingen und im Ehealltag rechnen müssen.\n\nGeorgs Beziehungen gehen immer wieder in die Brüche, dann heiratet er Jule und bekommt mit ihr drei Kinder. Glücklich sind die beide trotzdem nicht. Aber wer trägt die\n\nSchuld an dem Problem? Die feministisch sozialisierte Frau, die ein neues männliches Rollenbild erwartet, und manchmal doch den alten Macho haben will? Der Vater, der seinen Kindern Zärtlichkeit und Nähe vorenthalten hat? Oder Georg selbst, der sich von den Ansprüchen von Frau und Kindern überfordert fühlt?\n\nMinutiös und durchaus komisch protokolliert Michael Kumpfmüller das Leben eines Durchschnittsmannes im 21. Jahrhundert. Immer auf der Suche nach einem Weg aus dem Dilemma von unerfüllbaren Erwartungen und festgefahrenen Verhaltensmustern.\n\nWDR 5 Literatursommer sendet Ausschnitte einer Veranstaltung der lit.COLOGNE 2016.", *bc.Description, "ouch: Description")
	assert.Nil(t, bc.Image, "ouch: Image")
}
開發者ID:mro,項目名稱:internet-radio-recorder,代碼行數:41,代碼來源:wdr_test.go

示例13: TestUnmarshalBroadcastFromHTML_3

func TestUnmarshalBroadcastFromHTML_3(t *testing.T) {
	f, err := os.Open("testdata/2016-08-21T1805-sendung.html")
	assert.NotNil(t, f, "ouch")
	assert.Nil(t, err, "ouch")

	s := Station("wdr5")
	lang := "de"
	dtEnd, _ := time.Parse(time.RFC3339, "2016-08-21T19:00:00+02:00")
	bc0 := broadcast(r.Broadcast{
		BroadcastURL: r.BroadcastURL{
			TimeURL: r.TimeURL{
				Time:    time.Date(2016, time.August, 21, 18, 5, 0, 0, s.TimeZone),
				Source:  *r.MustParseURL("http://www.wdr.de/programmvorschau/wdr5/sendung/2016-07-23/40920025/krimi-am-samstag.html"),
				Station: r.Station(*s),
			},
			Title: "Krimi am Samstag",
		},
		Language: &lang,
		DtEnd:    &dtEnd,
	})

	res, err := bc0.parseBroadcastFromHtmlReader(f, nil)
	assert.Equal(t, 1, len(res), "96")
	bc := res[0]

	assert.Nil(t, err, "ouch")
	assert.Equal(t, "wdr5", bc.Station.Identifier, "ouch: Station.Identifier")
	assert.Equal(t, "Krimi am Samstag", bc.Title, "ouch: Title")
	assert.Equal(t, "http://www.wdr.de/programmvorschau/wdr5/sendung/2016-07-23/40920025/krimi-am-samstag.html", bc.Source.String(), "ouch: Source")
	assert.NotNil(t, bc.Language, "ouch: Language")
	assert.Equal(t, "de", *bc.Language, "ouch: Language")
	assert.Nil(t, bc.TitleSeries, "ouch: TitleSeries")
	assert.Equal(t, "Ich war für viele die Millowitsch-Tochter", *bc.TitleEpisode, "ouch: TitleEpisode")
	assert.Equal(t, "2016-08-21T18:05:00+02:00", bc.Time.Format(time.RFC3339), "ouch: Time")
	assert.Equal(t, "2016-08-21T19:00:00+02:00", bc.DtEnd.Format(time.RFC3339), "ouch: DtEnd")
	assert.Equal(t, "http://www1.wdr.de/radio/wdr5/sendungen/erlebtegeschichten/uebersicht-erlebte-geschichten100.html", bc.Subject.String(), "ouch: Subject")
	assert.Nil(t, bc.Modified, "ouch: Modified")
	assert.Equal(t, "WDR", *bc.Author, "ouch: Author")
	assert.Equal(t, "Lotti Krekel, Schauspielerin und Sängerin\nVon Christian Geuenich\nWiederholung: 22.05 Uhr\n\nLotti Krekel, am 23. August 1941 in Roetgen in der Eifel geboren, war ein Kinderstar des Radios. Dort lernte sie Willy Millowitsch kennen und wurde später als seine Filmund\n\nBühnentochter einem Millionenpublikum bekannt.\n\nElf Jahre lang spielte sie meist die Tochter des großen Kölschen Volksschauspielers, so dass viele Zuschauer sie bis heute für die leibliche Tochter von Willy Millowitsch halten. Ende der 1960er Jahre begann Lotti Krekel eine erfolgreiche zweite Karriere ohne Millowitsch und wurde eher zufällig mit ihrem kölschen Hit „Mir schenke der Ahl e paar Blömcher“ zu einer erfolgreichen Sängerin. Daneben spielte sie in Fernsehfilmen und stand auf der Theater- oder Karnevalsbühne. Mit ihrem Mann Ernst Hilbich und ihrer jüngeren Halbschwester Hildegard Krekel, war\n\nsie in der Fernsehserie „Die Anrheiner“ zu sehen.", *bc.Description, "ouch: Description")
	assert.Nil(t, bc.Image, "ouch: Image")
}
開發者ID:mro,項目名稱:internet-radio-recorder,代碼行數:41,代碼來源:wdr_test.go

示例14: TestParseBroadcast23h55min

func TestParseBroadcast23h55min(t *testing.T) {
	f, err := os.Open("testdata/2015-11-15T0005-b+-sendung.html")
	assert.NotNil(t, f, "ouch")
	assert.Nil(t, err, "ouch")

	s := Station("b+")
	t0 := broadcastURL{
		TimeURL: r.TimeURL{
			Time:    time.Date(2015, time.November, 11, 15, 5, 0, 0, localLoc),
			Source:  *r.MustParseURL("http://www.br.de/radio/bayern-plus/programmkalender/ausstrahlung-497666.html"),
			Station: r.Station(*s),
		},
		Title: "Bayern plus - Meine Schlager hören",
	}

	// http://rec.mro.name/stations/b%2b/2015/11/15/0005%20Bayern%20plus%20-%20Meine%20Schlager%20h%C3%B6ren
	bcs, err := t0.parseBroadcastReader(f, nil)
	assert.Nil(t, err, "ouch")
	assert.Equal(t, 1, len(bcs), "ouch")
	bc := bcs[0]
	assert.Equal(t, "b+", bc.Station.Identifier, "ouch: Station.Identifier")
	assert.Equal(t, "Bayern plus - Meine Schlager hören", bc.Title, "ouch: Title")
	assert.Equal(t, "http://www.br.de/radio/bayern-plus/programmkalender/ausstrahlung-497666.html", bc.Source.String(), "ouch: Source")
	assert.NotNil(t, bc.Language, "ouch: Language")
	assert.Equal(t, "de", *bc.Language, "ouch: Language")
	assert.Equal(t, t0.Title, bc.Title, "ouch: Title")
	assert.Nil(t, bc.TitleSeries, "ouch: TitleSeries")
	assert.Nil(t, bc.TitleEpisode, "ouch: TitleEpisode")
	assert.Equal(t, "2015-11-15T00:05:00+01:00", bc.Time.Format(time.RFC3339), "ouch: Time")
	assert.Equal(t, "2015-11-16T00:00:00+01:00", bc.DtEnd.Format(time.RFC3339), "ouch: DtEnd")
	assert.Equal(t, 1435*time.Minute, bc.DtEnd.Sub(bc.Time), "ouch: Duration")
	assert.Nil(t, bc.Subject, "ouch: Subject")
	assert.Equal(t, "2015-10-29T01:25:04+01:00", bc.Modified.Format(time.RFC3339), "ouch: Modified")
	assert.Equal(t, "Bayerischer Rundfunk", *bc.Author, "ouch: Author")
	assert.NotNil(t, bc.Description, "ouch: Description")
	assert.Equal(t, "Jeweils zur vollen Stunde\nNachrichten, Wetter, Verkehr", *bc.Description, "ouch: Description")
	assert.Nil(t, bc.Image, "ouch: Image")
	assert.Nil(t, bc.Publisher, "Publisher")
	assert.Nil(t, bc.Creator, "Creator")
	assert.Nil(t, bc.Copyright, "Copyright")
}
開發者ID:mro,項目名稱:internet-radio-recorder,代碼行數:41,代碼來源:br_test.go

示例15: TestUnmarshalBroadcastFromHTML_1

func TestUnmarshalBroadcastFromHTML_1(t *testing.T) {
	f, err := os.Open("testdata/2016-08-21T1705-sendung.html")
	assert.NotNil(t, f, "ouch")
	assert.Nil(t, err, "ouch")

	s := Station("wdr5")
	lang := "de"
	dtEnd, _ := time.Parse(time.RFC3339, "2016-08-21T18:00:00+02:00")
	bc0 := broadcast(r.Broadcast{
		BroadcastURL: r.BroadcastURL{
			TimeURL: r.TimeURL{
				Time:    time.Date(2016, time.August, 21, 17, 5, 0, 0, s.TimeZone),
				Source:  *r.MustParseURL("http://www.wdr.de/programmvorschau/wdr5/sendung/2016-07-23/40920025/krimi-am-samstag.html"),
				Station: r.Station(*s),
			},
			Title: "Krimi am Samstag",
		},
		Language: &lang,
		DtEnd:    &dtEnd,
	})

	res, err := bc0.parseBroadcastFromHtmlReader(f, nil)
	assert.Equal(t, 1, len(res), "96")
	bc := res[0]

	assert.Nil(t, err, "ouch")
	assert.Equal(t, "wdr5", bc.Station.Identifier, "ouch: Station.Identifier")
	assert.Equal(t, "Krimi am Samstag", bc.Title, "ouch: Title")
	assert.Equal(t, "http://www.wdr.de/programmvorschau/wdr5/sendung/2016-07-23/40920025/krimi-am-samstag.html", bc.Source.String(), "ouch: Source")
	assert.NotNil(t, bc.Language, "ouch: Language")
	assert.Equal(t, "de", *bc.Language, "ouch: Language")
	assert.Nil(t, bc.TitleSeries, "ouch: TitleSeries")
	assert.Equal(t, "Mördergrube", *bc.TitleEpisode, "ouch: TitleEpisode")
	assert.Equal(t, "2016-08-21T17:05:00+02:00", bc.Time.Format(time.RFC3339), "ouch: Time")
	assert.Equal(t, "2016-08-21T18:00:00+02:00", bc.DtEnd.Format(time.RFC3339), "ouch: DtEnd")
	assert.Equal(t, "http://www1.wdr.de/radio/wdr5/sendungen/hoerspiel-am-sonntag/uebersicht-hoerspiel-am-sonntag100.html", bc.Subject.String(), "ouch: Subject")
	assert.Nil(t, bc.Modified, "ouch: Modified")
	assert.Equal(t, "WDR", *bc.Author, "ouch: Author")
	assert.Equal(t, "Von Lorenz Schröter\nAndré: Christoph Bach\nBeatrice: Mira Partecke\nDaniela: Victoria Trauttmansdorff\nEinar: Christof Wackernagel\nAndré, jung: Jakob Göss\nBruno: Volker Lippmann\nWaldemar: Gunnar Kolb\nMelanie: Julia Riedler\nJunger Mann: Julius Schleheck\nImke: Claudia Mischke\nRegie: Thomas Wolfertz\n\nDas Leben ist eine Sickergrube voller Erinnerungen. Aber was macht man, wenn der Gestank nicht mehr auszuhalten ist? André beschließt, den Sumpf auszuheben.", *bc.Description, "ouch: Description")
	assert.Nil(t, bc.Image, "ouch: Image")
}
開發者ID:mro,項目名稱:internet-radio-recorder,代碼行數:41,代碼來源:wdr_test.go


注:本文中的purl/mro/name/recorder/radio/scrape.Station函數示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。