diff --git a/src/caosadvancedtools/crawler.py b/src/caosadvancedtools/crawler.py index e1d9901c60620b2d858f5f8bb54d346d1e87fe8d..50da7a2356fa41978a43a8357323f47a873e80ae 100644 --- a/src/caosadvancedtools/crawler.py +++ b/src/caosadvancedtools/crawler.py @@ -138,7 +138,7 @@ class Crawler(object): if current_xml != old: continue - new_cont.update() + new_cont.update(unique=False) def collect_cfoods(self): """ @@ -541,18 +541,17 @@ carefully and if the changes are ok, click on the following link: used for the match. """ - if entity.name is None: - # TODO multiple parents are ignored! Sufficient? - query_string = "FIND Record " + entity.get_parents()[0].name - query_string += " WITH " - - for p in entity.get_properties(): - query_string += ("'" + p.name + "'='" + str(get_value(p)) - + "' AND ") - # remove the last AND - query_string = query_string[:-4] - else: - query_string = "FIND '{}'".format(entity.name) + # TODO multiple parents are ignored! Sufficient? + query_string = "FIND Record " + entity.get_parents()[0].name + query_string += " WITH " + if entity.name is not None: + query_string += "name='{}' AND".format(entity.name) + + for p in entity.get_properties(): + query_string += ("'" + p.name + "'='" + str(get_value(p)) + + "' AND ") + # remove the last AND + query_string = query_string[:-4] logger.debug(query_string) q = db.Query(query_string)