def _extract_metrics_and_provenance_url(self, entries, status_code=200, id=None):
        try:
            max_citation = 0
            for entry in entries:
                citation = int(entry["citedby-count"])
                if citation > max_citation:
                    max_citation = citation
                    api_url = entry["prism:url"] 
                    provenance_url = api_url

                    # broken for now, getting scopus ID this way
                    # just send back api as provenance
                    # match = re.findall("scopus_id:([\dA-Z]+)", api_url)
                    # scopus_id = match[0]
                    # provenance_url = self._get_templated_url(self.provenance_url_template, scopus_id)
        except (__HOLE__, TypeError, ValueError):
            return {}

        if max_citation:
            metrics_dict = {"scopus:citations": (max_citation, provenance_url)}
        else:
            metrics_dict = {}   
        return metrics_dict
dataset/ETHPy150Open Impactstory/total-impact-webapp/totalimpact/providers/scopus.py/Scopus._extract_metrics_and_provenance_url