コード例 #1
0
    def __format_date(self, solr_date):
        """

        :param solr_date:
        :return:
        """
        # solr_date has the format 2017-12-01
        date_time = datetime.strptime(solr_date.replace('-00', '-01'),
                                      '%Y-%m-%d')
        return strftime(date_time, '%Y-%m-X%d').replace('X0',
                                                        'X').replace('X', '')
コード例 #2
0
ファイル: bibTexFormat.py プロジェクト: ysBach/export_service
    def __format_date(self, solr_date):
        """

        :param solr_date:
        :return:
        """
        # solr_date has the format 2017-12-01
        date_time = datetime.strptime(solr_date.replace('-00', '-01'),
                                      '%Y-%m-%d')
        # 2/7/2020 as per Alberto, month should be lower case
        return strftime(date_time, '%b').lower()
コード例 #3
0
ファイル: customFormat.py プロジェクト: ysBach/export_service
    def __format_date(self, solr_date, date_format):
        """

        :param solr_date:
        :param date_format:
        :return:
        """
        # solr_date has the format 2017-12-01
        date_time = datetime.strptime(solr_date.replace('-00', '-01'),
                                      '%Y-%m-%d')
        formats = {'D': '%m/%Y', 'Y': '%Y'}
        return strftime(date_time, formats[date_format])
コード例 #4
0
def test_strftime():
    s = strftime(datetime.date(1800, 9, 23),
                 "%Y has the same days as 1980 and 2008")
    assert (s == "1800 has the same days as 1980 and 2008")

    # Get the weekdays.  Can't hard code them; they could be localized.
    days = []
    for i in range(1, 10):
        days.append(datetime.date(2000, 1, i).strftime("%A"))
    nextday = {}
    for i in range(8):
        nextday[days[i]] = days[i + 1]
    assert (days == [
        'Saturday', 'Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday',
        'Friday', 'Saturday', 'Sunday'
    ])
    assert (nextday == {
        'Monday': 'Tuesday',
        'Tuesday': 'Wednesday',
        'Friday': 'Saturday',
        'Wednesday': 'Thursday',
        'Thursday': 'Friday',
        'Sunday': 'Monday',
        'Saturday': 'Sunday'
    })

    # Testing all day names from 0001/01/01 until 2000/08/01
    startdate = datetime.date(1, 1, 1)
    enddate = datetime.date(2000, 8, 1)
    prevday = strftime(startdate, "%A")
    one_day = datetime.timedelta(1)
    assert (prevday == 'Monday')

    # Testing century
    testdate = startdate + one_day
    while testdate < enddate:
        day = strftime(testdate, "%A")
        assert (nextday[prevday] == day)
        prevday = day
        testdate = testdate + one_day
コード例 #5
0
    def __format_date(self, solr_date, export_format):
        """

        :param solr_date:
        :param export_format:
        :return:
        """
        # solr_date has the format 2017-12-01
        date_time = datetime.strptime(solr_date.replace('-00', '-01'),
                                      '%Y-%m-%d')
        formats = {
            self.EXPORT_FORMAT_ADS: '%m/%Y',
            self.EXPORT_FORMAT_ENDNOTE: '%B %d, %Y',
            self.EXPORT_FORMAT_PROCITE: '%Y/%m/X%d',
            self.EXPORT_FORMAT_REFMAN: '%Y/%m/X%d',
            self.EXPORT_FORMAT_REFWORKS: '%Y/%m/X%d',
            self.EXPORT_FORMAT_MEDLARS: '%Y %b %d'
        }
        return strftime(date_time,
                        formats[export_format]).replace('X0',
                                                        'X').replace('X', '')