Beispiel #1
0
    def sniff(self, sample, delimiters=None):
        """
        Returns a dialect (or None) corresponding to the sample
        """

        quotechar, doublequote, delimiter, skipinitialspace = \
                   self._guess_quote_and_delimiter(sample, delimiters)
        if not delimiter:
            delimiter, skipinitialspace = self._guess_delimiter(
                sample, delimiters)

        if not delimiter:
            raise Error("Could not determine delimiter")

        class dialect(Dialect):
            _name = "sniffed"
            lineterminator = '\r\n'
            quoting = QUOTE_MINIMAL
            # escapechar = ''

        dialect.doublequote = doublequote
        dialect.delimiter = delimiter
        # _csv.reader won't accept a quotechar of ''
        dialect.quotechar = quotechar or '"'
        dialect.skipinitialspace = skipinitialspace

        return dialect
Beispiel #2
0
def sniff(sample, delimiters=None):
    """
    Returns a dialect (or None) corresponding to the sample
    """

    quotechar, doublequote, delimiter, skipinitialspace = _guess_quote_and_delimiter(
        sample, delimiters)
    delimiter1, skipinitialspace1 = _guess_delimiter(sample, delimiters)

    if delimiter is None and delimiter1 is None:
        raise Error("Could not determine delimiter")

    if delimiter is None and delimiter1:
        delimiter = delimiter1

    if delimiter:
        delimiter = delimiter.strip()
    if delimiter1:
        delimiter1 = delimiter1.strip()

    if delimiter != delimiter1:
        #lets figure it out
        if len(delimiter) == 0 and len(delimiter1) != 0:
            delimiter = delimiter1

    if not delimiter:
        raise Error("Could not determine delimiter")

    class dialect(Dialect):
        _name = "sniffed"
        lineterminator = '\r\n'
        quoting = QUOTE_MINIMAL
        # escapechar = ''

    dialect.doublequote = doublequote
    dialect.delimiter = delimiter
    # _csv.reader won't accept a quotechar of ''
    dialect.quotechar = quotechar or '"'
    dialect.skipinitialspace = skipinitialspace

    return dialect
Beispiel #3
0
    def sniff(self, sample, delimiters=None):
        (quotechar, doublequote, delimiter, skipinitialspace) = self._guess_quote_and_delimiter(sample, delimiters)
        if not delimiter:
            (delimiter, skipinitialspace) = self._guess_delimiter(sample, delimiters)
        if not delimiter:
            raise Error('Could not determine delimiter')

        class dialect(Dialect):
            __qualname__ = 'Sniffer.sniff.<locals>.dialect'
            _name = 'sniffed'
            lineterminator = '\r\n'
            quoting = QUOTE_MINIMAL

        dialect.doublequote = doublequote
        dialect.delimiter = delimiter
        dialect.quotechar = quotechar or '"'
        dialect.skipinitialspace = skipinitialspace
        return dialect
Beispiel #4
0
    def sniff(self, sample, delimiters=None):
        """
        Returns a dialect (or None) corresponding to the sample
        """
        quotechar, doublequote, delimiter, skipinitialspace = (
            self._guess_quote_and_delimiter(sample, delimiters))
        if not delimiter:
            delimiter, skipinitialspace = self._guess_delimiter(
                sample, delimiters)
        if not delimiter:
            raise Error('Could not determine delimiter')

        class dialect(Dialect):
            _name = 'sniffed'
            lineterminator = '\r\n'
            quoting = QUOTE_MINIMAL

        dialect.doublequote = doublequote
        dialect.delimiter = delimiter
        dialect.quotechar = quotechar or '"'
        dialect.skipinitialspace = skipinitialspace
        return dialect
Beispiel #5
0
 def _validate(self):
     try:
         _Dialect(self)
     except TypeError as e:
         # We do this for compatibility with py2.3
         raise Error(str(e))
Beispiel #6
0
 def _validate(self):
     try:
         _Dialect(self)
     except TypeError as e:
         raise Error(str(e))