channels = tree.find("channels")
return self._process_list(channels, ["description", "url", "port"])
- def get_radio_channel_programming(self, chanId):
- tree = self._get_page_with_validation(
- action="lds.radio.radiochannels.programming.query",
- channelID=chanId,
- )
+ def get_radio_channel_programming(self, chanId, date=None):
+ if date is not None:
+ tree = self._get_page_with_validation(
+ action="lds.radio.radiochannels.programming.query",
+ channelID=chanId,
+ date=date,
+ )
+ else:
+ tree = self._get_page_with_validation(
+ action="lds.radio.radiochannels.programming.query",
+ channelID=chanId,
+ )
programs = tree.find("programs")
return self._process_list(programs, ["date", "time", "title", "shortdescription", "artist"])
items = tree.find("chapters")
return self._process_list(items, ["title", "url"])
+ CONFERENCE_SEARCH = 1
+ MAGAZINE_SEARCH = 2
+ VIDEO_SEARCH = 8
+ SEARCH_ALL = 11
+
+ def search(self, langId, phrase, content):
+ tree = self._get_page_with_validation(
+ action="lds.search",
+ languageID=langId,
+ phrase=phrase,
+ content=content,
+ )
+ return tree
+
def _get_page_with_validation(self, **params):
encodedParams = urllib.urlencode(params)
- page = self._browser.download("http://tech.lds.org/radio?%s" % encodedParams)
+ url = "http://tech.lds.org/radio?%s" % encodedParams
+ page = self._browser.download(url)
if not page:
raise RuntimeError("Blank page")
tree = ElementTree.fromstring(page)
for confData in confs:
sessions = list(b.get_conference_sessions(confData["id"]))
for sessionData in sessions:
+ print sessionData
talks = list(b.get_conference_talks(sessionData["id"]))
print talks
print mags
for magData in mags:
issues = list(b.get_magazine_issues(magData["id"]))
- issues
for issueData in issues:
+ print issueData
articles = list(b.get_magazine_articles(issueData["id"]))
print articles
print mags
for magData in mags:
books = list(b.get_scripture_books(magData["id"]))
- print books
for bookData in books:
+ print bookData
chapters = list(b.get_scripture_chapters(bookData["id"]))
print chapters