From 091d557c811b7c1d8a83dae733e67a81cd81eb76 Mon Sep 17 00:00:00 2001 From: neodarz Date: Sun, 20 Jan 2019 18:08:21 +0100 Subject: Clean ryzomcore wiki engine code --- src/ryzomcoreConfluence.py | 116 +++++++++++++++------------------------------ 1 file changed, 39 insertions(+), 77 deletions(-) diff --git a/src/ryzomcoreConfluence.py b/src/ryzomcoreConfluence.py index 5d35c9f..e4e9ffc 100644 --- a/src/ryzomcoreConfluence.py +++ b/src/ryzomcoreConfluence.py @@ -24,8 +24,6 @@ number_of_results = 5 # Doku is OpenSearch compatible base_url = 'https://ryzomcore.atlassian.net' search_url = '/wiki/dosearchsite.action?{query}' -#search_url = '/wikhan/?do=search'\ -# '&{query}' # TODO '&startRecord={offset}'\ # TODO '&maximumRecords={limit}'\ @@ -45,86 +43,50 @@ def response(resp): doc = fromstring(resp.text) - # parse results - # Quickhits + # Search for r in doc.xpath('//ol[@class="search-results cql"]/li'): try: res_url = r.xpath('.//a[@class="search-result-link visitable"]/@href')[-1] + title = extract_text(r.xpath('.//a[@class="search-result-link visitable"]')) + content = extract_text(r.xpath('.//div[@class="highlights"]')) + dataBrut = extract_text(r.xpath('.//span[@class="date"]')) + + Thedate = dataBrut.split(' ') + TheDay = Thedate[1].split(',') + + + if Thedate[0] == "Jan": + ThedateMonth = 1 + elif Thedate[0] == "Feb": + ThedateMonth = 2 + elif Thedate[0] == "Mar": + ThedateMonth = 3 + elif Thedate[0] == "Apr": + ThedateMonth = 4 + elif Thedate[0] == "May": + ThedateMonth = 5 + elif Thedate[0] == "Jun": + ThedateMonth = 6 + elif Thedate[0] == "Jul": + ThedateMonth = 7 + elif Thedate[0] == "Aug": + ThedateMonth = 8 + elif Thedate[0] == "Sep": + ThedateMonth = 9 + elif Thedate[0] == "Oct": + ThedateMonth = 10 + elif Thedate[0] == "Nov": + ThedateMonth = 11 + else: + ThedateMonth = 12 + + # append result + results.append({'title': title, + 'content': content, + 'url': base_url + res_url, + 'publishedDate': datetime(int(Thedate[2]), ThedateMonth, int(TheDay[0]), 3, 1, 42)}) except: continue - if not res_url: - continue - - title = extract_text(r.xpath('.//a[@class="search-result-link visitable"]')) - - content = extract_text(r.xpath('.//div[@class="highlights"]')) - - dataBrut = extract_text(r.xpath('.//span[@class="date"]')) - - #data = dataBrut.split('-') - - - - #date = '-'.join(dataS) - #adatetime = data[1] - #data = adatetime.split(',') - #date = data[1] - Thedate = dataBrut.split(' ') - TheDay = Thedate[1].split(',') - - - if Thedate[0] == "Jan": - ThedateMonth = 1 - elif Thedate[0] == "Feb": - ThedateMonth = 2 - elif Thedate[0] == "Mar": - ThedateMonth = 3 - elif Thedate[0] == "Apr": - ThedateMonth = 4 - elif Thedate[0] == "May": - ThedateMonth = 5 - elif Thedate[0] == "Jun": - ThedateMonth = 6 - elif Thedate[0] == "Jul": - ThedateMonth = 7 - elif Thedate[0] == "Aug": - ThedateMonth = 8 - elif Thedate[0] == "Sep": - ThedateMonth = 9 - elif Thedate[0] == "Oct": - ThedateMonth = 10 - elif Thedate[0] == "Nov": - ThedateMonth = 11 - else: - ThedateMonth = 12 - - # append result - results.append({'title': title, - 'content': content, - 'url': base_url + res_url, - 'publishedDate': datetime(int(Thedate[2]), ThedateMonth, int(TheDay[0]), 3, 1, 42)}) - - - - # Search results - #for r in doc.xpath('//dl[@class="search_results"]/*'): - # try: - # if r.tag == "dt": - # res_url = r.xpath('.//a[@class="wikilink1"]/@href')[-1] - # title = extract_text(r.xpath('.//a[@class="wikilink1"]/@title')) - # elif r.tag == "dd": - # content = extract_text(r.xpath('.')) - - # append result - # results.append({'title': title, - # 'content': content, - # 'url': base_url + res_url}) - # except: - # continue - - # if not res_url: - # continue - # return results return results -- cgit v1.2.1