Rfcparser
Rfcparser is a Python tool that makes it easy to parse common RFC syntaxes. Rfcparser takes a raw string as input, parses, validates, and returns Python objects to simplify the processing of RFC syntaxes.
Installing
$ pip install rfcparser
or
$ git clone https://github.com/karosis88/rfcparser.git
$ pip install ./rfcparser
Usage
Examples and detailed instructions on how to use the Rfcparser library to parse RFC syntaxes.
In most cases, you will primarily use the 'core' module, which offers a convenient interface for parsing your raw input string
>>> from rfcparser import core
Rfcparser offers a specific class for each grammar, with a class name following the pattern of "PREFIX PARSER RFC-NUMBER"
Fortunately, most modern IDEs now offer autocompletion, which will assist you in locating the parser classes you need to use.
URI parsing
>>> uri = "https://login:password@127.0.0.1:1010/path?name=test#fr"
>>> parsed_uri = core.UriParser3986().parse(uri)
With Rfcparser, you now have access to a 'parsed_uri' that is not just a plain string, but rather a Python object. This makes it easier to work with the URI, and you don't need to worry about compatibility issues with other applications as the library parses syntaxes according to the latest RFC standards.
>>> parsed_uri.scheme
'https'
>>> parsed_uri.userinfo
'login:password'
>>> parsed_uri.ip
'127.0.0.1'
>>> parsed_uri.port
1010
>>> parsed_uri.path
'/path'
>>> parsed_uri.query
{'name': 'test'}
>>> parsed_uri.fragment
'fr'
Date-Time parser
>>> date_str = "Tue, 07-Feb-2023 13:20:04 GMT"
>>> parsed_date = core.DateParser6265().parse(date_str)
>>> type(parsed_date)
<class 'datetime.datetime'>
>>> parsed_date.day
7
Release files for rfcparser 0.0.8
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| rfcparser-0.0.8.tar.gz | 9.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| rfcparser-0.0.8-py2.py3-none-any.whl | Python 2, Python 3 | none | any | Details |
Total release size: 21.0 kB
Release files / rfcparser-0.0.8.tar.gz
| Download URL | rfcparser-0.0.8.tar.gz |
|---|---|
| Size | 9.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
0c77179ae165216ecc1b706a89d698f30ba014e9676c4e33c08d57ad80d318d5
|
|
BLAKE2b-256 checksum How to use checksums |
d018a98308a9a8888dede2c6cc9ac28081a3de3e53de87aed26a4bb1f5ad2399
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
python-httpx/0.23.3
|
Release files / rfcparser-0.0.8-py2.py3-none-any.whl
| Download URL | rfcparser-0.0.8-py2.py3-none-any.whl |
|---|---|
| Size | 11.1 kB |
| Tags | Python 2 Python 3 |
|
SHA-256 checksum How to use checksums |
edc15af700fb889fd2a4624b24e05c2776ac1378d7b765b37b5e61ff48758324
|
|
BLAKE2b-256 checksum How to use checksums |
deff0b408826ca3af23908775ee17d3f7280a235cc73dc910fa9d5a297dad98e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
python-httpx/0.23.3
|