def harvest(self, start_date=None, end_date=None):

        start_date = start_date or timedelta(settings.DAYS_BACK) - date.today()
        end_date = end_date or date.today()

        if not PLOS_API_KEY:  # pragma: no cover
            return []

        return [
            RawDocument({
                'filetype': 'xml',
                'source': self.short_name,
                'doc': etree.tostring(row),
                'docID': row.xpath("str[@name='id']")[0].text,
            })
            for row in
            self.fetch_rows(start_date.isoformat(), end_date.isoformat())
            if row.xpath("arr[@name='abstract']")
            or row.xpath("str[@name='author_display']")
        ]
dataset/ETHPy150Open CenterForOpenScience/scrapi/scrapi/harvesters/plos.py/PlosHarvester.harvest/swapped operands of `-`