diff options
| author | jvoisin | 2018-03-19 23:43:49 +0100 |
|---|---|---|
| committer | jvoisin | 2018-03-19 23:43:49 +0100 |
| commit | 8f44616366f9ca395314d59a98840e2912f488df (patch) | |
| tree | 88d3d6fbdd45a6f9e35abf7646e9950933980e3a /src/parser_factory.py | |
| parent | d262f780f7653c7e6c5d3b30c5ceedbb25f41787 (diff) | |
Implement mimetype detection
Diffstat (limited to 'src/parser_factory.py')
| -rw-r--r-- | src/parser_factory.py | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/parser_factory.py b/src/parser_factory.py new file mode 100644 index 0000000..a93595a --- /dev/null +++ b/src/parser_factory.py | |||
| @@ -0,0 +1,10 @@ | |||
| 1 | import mimetypes | ||
| 2 | |||
| 3 | from .parsers import abstract | ||
| 4 | from .parsers import * | ||
| 5 | |||
| 6 | def get_parser(filename: str): | ||
| 7 | mtype, _ = mimetypes.guess_type(filename) | ||
| 8 | for c in abstract.AbstractParser.__subclasses__(): | ||
| 9 | if mtype in c.mimetypes: | ||
| 10 | return c(filename) | ||
