diff --git a/ariba/megares_data_finder.py b/ariba/megares_data_finder.py index c97d60e..8403977 100644 --- a/ariba/megares_data_finder.py +++ b/ariba/megares_data_finder.py @@ -8,8 +8,9 @@ class Error (Exception): pass class MegaresDataFinder: def __init__(self, version=None): - self.url_root = 'https://megares.meglab.org/download/' - self.index_url = self.url_root + 'index.php' + self.url_root = 'https://www.meglab.org/megares/download' + self.url_root_downloads='https://www.meglab.org' + self.index_url = self.url_root self.version = version @@ -30,7 +31,7 @@ def _zips_from_index_page_string(cls, html_text): except: raise Error('Error parsing contents of megares download page. Cannot continue') - prefix = 'megares_v' + prefix = '/downloads/megares_v' suffix = '.zip' zips = {} @@ -39,7 +40,9 @@ def _zips_from_index_page_string(cls, html_text): if href.startswith(prefix) and href.endswith(suffix): version = href[len(prefix):-len(suffix)] zips[version] = href + + #print(zips) return zips @@ -48,6 +51,7 @@ def _get_url_for_version(cls, zips, version=None): if version is None: versions = list(zips.keys()) versions.sort(key=LooseVersion) + #print('This is v',zips[versions[-1]]) return zips[versions[-1]] else: try: @@ -63,6 +67,6 @@ def run(self): zips = MegaresDataFinder._zips_from_index_page_string(html_text) print('Found versions: ', ', '.join(list(zips.keys()))) url = MegaresDataFinder._get_url_for_version(zips, version=self.version) - return self.url_root + url + return self.url_root_downloads + url diff --git a/ariba/megares_zip_parser.py b/ariba/megares_zip_parser.py index ab8231e..717abe0 100644 --- a/ariba/megares_zip_parser.py +++ b/ariba/megares_zip_parser.py @@ -88,13 +88,14 @@ def _load_header_mappings_file(cls, infile): return MegaresZipParser._csv_to_dict(infile, '\t', {'Source_Database', 'MEGARes_Header', 'Source_Headers(space_separated)'}, 'MEGARes_Header') else: assert infile.endswith(".csv") - data = MegaresZipParser._csv_to_dict(infile, ',', {'Database', 'MEGARes_v2_header', 'Source_header'}, 'MEGARes_v2_header') + data = MegaresZipParser._csv_to_dict(infile, ',', {'Database','Source_header','MEGARes_header','UpdatedHeader'}, 'MEGARes_header') fixed_data = {} for key, d in data.items(): fixed_data[key] = { "Source_Database": d["Database"], "Source_Headers(space_separated)": d["Source_header"] } + #print(fixed_data) return fixed_data diff --git a/ariba/tests/megares_data_finder_test.py b/ariba/tests/megares_data_finder_test.py index 669a663..8f7294d 100644 --- a/ariba/tests/megares_data_finder_test.py +++ b/ariba/tests/megares_data_finder_test.py @@ -16,21 +16,23 @@ def test_zips_from_index_page_string(self):