def task_run_core(recid, records, bibcatalog_system=None, _arxiv=False): setup_loggers(None, use_bibtask=True) if _arxiv: overwrite = True else: overwrite = not task_get_option('no-overwrite') try: record = extract_references_from_record(recid) msg = "Extracted references for %s" % recid safe_to_extract = True if overwrite: write_message("%s (overwrite)" % msg) else: write_message(msg) if not check_record_for_refextract(recid): write_message('Record not safe for re-extraction, skipping') safe_to_extract = False if safe_to_extract: records.append(record) # Create a RT ticket if necessary if task_get_option('new') or task_get_option('create-ticket'): create_ticket(recid, bibcatalog_system) except FullTextNotAvailable: write_message("No full text available for %s" % recid)
def submit_refextract_task(recids): """Submit a refextract task if needed""" # First filter out recids we cannot safely extract references from # (mostly because they have been curated) recids = [recid for recid in recids if check_record_for_refextract(recid)] if recids: recids_str = ','.join(str(recid) for recid in recids) task_low_level_submission('refextract', NAME, '-i', recids_str)