Net Module¶
The rite.net module provides network utilities including URL handling, HTTP operations, and validation.
Overview¶
net ¶
Network Module¶
Comprehensive networking utilities for HTTP, URLs, requests, validation, and MIME types.
This module provides utilities organized into semantic submodules: - http: HTTP utilities (status codes, methods, headers) - url: URL manipulation (parse, build, encode/decode) - request: HTTP requests (GET, POST) - validation: Network validation (email, URL, IP, port) - mime: MIME type utilities (guess type, parse)
Examples¶
from rite.net import http_status_code, url_parse http_status_code(200) 'OK' result = url_parse("https://example.com/path") result.scheme 'https'
Legacy Classes¶
from rite.net import BaseHTTPServer, SQLiteServer server = BaseHTTPServer(port=8000)
Classes¶
BaseHTTPServer ¶
Bases: BaseHTTPRequestHandler
HTTP Server Class¶
A simple HTTP server handler class that responds to GET and POST requests.
Attributes¶
None
Methods¶
do_get(): Handle GET requests.
do_post(): Handle POST requests.
_send_response(status_code, content, content_type): Helper method to
send HTTP responses.
_handle_404(): Helper method to handle 404 Not Found responses.
run(server_class, handler_class, port): Static method to run the
server.
Functions¶
run
staticmethod
¶
run(server_class: type[HTTPServer] = HTTPServer, handler_class: type[BaseHTTPRequestHandler] | None = None, port: int = 8000)
Static method to run the HTTP server.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
server_class
|
HTTPServer
|
The HTTP server class. |
HTTPServer
|
handler_class
|
BaseHTTPRequestHandler
|
The HTTP request handler |
None
|
port
|
int
|
Port number to run the server on. |
8000
|
Returns¶
None
SQLiteServer ¶
A SQLite3 server class for handling database operations with enhanced functionality.
This class provides a simplified interface for interacting with SQLite databases, including methods for executing queries, handling transactions, and performing basic CRUD operations.
Attributes¶
db_path (str): Path to the SQLite3 database file.
Methods¶
execute_query(query, params): Executes a SQL query with parameters.
fetch_all(query, params): Fetches all rows from a SQL query.
fetch_one(query, params): Fetches the first row from a SQL query.
insert(table, data_dict): Inserts data into a table.
update(table, data_dict, condition): Updates data in a table based on
a condition.
delete(table, condition): Deletes data from a table based on a condition.
transaction(queries): Executes a series of queries in a transaction.
Initializes the SQLite3 server with the specified database path.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
db_path
|
str
|
Path to the SQLite3 database file. |
required |
Functions¶
delete ¶
Deletes rows from a table.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
table
|
str
|
Name of the table to delete from. |
required |
condition
|
str
|
SQL condition for the deletion. |
required |
Returns¶
None
execute_query ¶
Executes a SQL query with parameters.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
query
|
str
|
SQL query to execute. |
required |
params
|
Tuple
|
Parameters for the SQL query. |
()
|
Returns¶
None
fetch_all ¶
Fetches all rows from a SQL query.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
query
|
str
|
SQL query to execute. |
required |
params
|
Tuple
|
Parameters for the SQL query. |
()
|
Returns¶
list[Tuple]: List of rows returned by the query.
fetch_one ¶
fetch_one(query: str, params: Sequence[Any] | dict[str, Any] | tuple[Any, ...] = ()) -> tuple[Any, ...]
Fetches the first row from a SQL query.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
query
|
str
|
SQL query to execute. |
required |
params
|
Tuple
|
Parameters for the SQL query. |
()
|
Returns¶
Tuple: The first row returned by the query.
insert ¶
Inserts a new row into a table.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
table
|
str
|
Name of the table to insert data into. |
required |
data_dict
|
dict
|
Dictionary containing column names and values. |
required |
Returns¶
None
transaction ¶
Executes a series of queries in a single transaction.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
queries
|
list[tuple[str, Tuple]]
|
A list of queries and their parameters. |
required |
Raises:
| Type | Description |
|---|---|
Error
|
If an error occurs during the transaction. |
Modules¶
http ¶
HTTP Module¶
HTTP protocol utilities.
This submodule provides utilities for HTTP status codes, methods, and header parsing.
Examples¶
from rite.net.http import ( ... http_status_code, ... http_is_method ... ) http_status_code(200) 'OK'
Modules¶
http_is_method ¶
HTTP Methods¶
Check if HTTP method is valid.
Examples¶
from rite.net.http import http_is_method http_is_method("GET") True
http_parse_headers ¶
HTTP Headers Parser¶
Parse HTTP headers from string.
Examples¶
from rite.net.http import http_parse_headers headers = "Content-Type: application/json\r\nHost: example.com" http_parse_headers(headers)
Parse HTTP headers from string.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
headers_str
|
str
|
Raw headers string. |
required |
Returns:
| Type | Description |
|---|---|
dict[str, str]
|
Dictionary of header name to value. |
Examples:
>>> http_parse_headers("User-Agent: Mozilla/5.0")
{'User-Agent': 'Mozilla/5.0'}
>>> http_parse_headers(
... "Accept: text/html\r\nAccept-Encoding: gzip"
... )
{'Accept': 'text/html', 'Accept-Encoding': 'gzip'}
Notes
Splits on colon (:). Handles \r\n line endings.
http_status_code ¶
HTTP Status Codes¶
HTTP status code constants and utilities.
Examples¶
from rite.net.http import http_status_code http_status_code(200) 'OK'
Get HTTP status description.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
code
|
int
|
HTTP status code. |
required |
Returns:
| Type | Description |
|---|---|
str
|
Status description. |
Examples:
>>> http_status_code(200)
'OK'
>>> http_status_code(404)
'Not Found'
>>> http_status_code(500)
'Internal Server Error'
Notes
Uses http.HTTPStatus from standard library.
http_is_method ¶
HTTP Methods¶
Check if HTTP method is valid.
Examples¶
from rite.net.http import http_is_method http_is_method("GET") True
http_parse_headers ¶
HTTP Headers Parser¶
Parse HTTP headers from string.
Examples¶
from rite.net.http import http_parse_headers headers = "Content-Type: application/json\r\nHost: example.com" http_parse_headers(headers)
Functions¶
http_parse_headers ¶
Parse HTTP headers from string.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
headers_str
|
str
|
Raw headers string. |
required |
Returns:
| Type | Description |
|---|---|
dict[str, str]
|
Dictionary of header name to value. |
Examples:
>>> http_parse_headers("User-Agent: Mozilla/5.0")
{'User-Agent': 'Mozilla/5.0'}
>>> http_parse_headers(
... "Accept: text/html\r\nAccept-Encoding: gzip"
... )
{'Accept': 'text/html', 'Accept-Encoding': 'gzip'}
Notes
Splits on colon (:). Handles \r\n line endings.
http_status_code ¶
HTTP Status Codes¶
HTTP status code constants and utilities.
Examples¶
from rite.net.http import http_status_code http_status_code(200) 'OK'
Functions¶
http_status_code ¶
Get HTTP status description.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
code
|
int
|
HTTP status code. |
required |
Returns:
| Type | Description |
|---|---|
str
|
Status description. |
Examples:
>>> http_status_code(200)
'OK'
>>> http_status_code(404)
'Not Found'
>>> http_status_code(500)
'Internal Server Error'
Notes
Uses http.HTTPStatus from standard library.
mime ¶
MIME Module¶
MIME type utilities.
This submodule provides utilities for working with MIME types, including type guessing and parsing.
Examples¶
from rite.net.mime import mime_guess_type, mime_parse mime_guess_type("file.json") 'application/json' mime_parse("text/html") ('text', 'html')
Modules¶
mime_guess_extension ¶
Extension Guesser¶
Guess file extension from MIME type.
Examples¶
from rite.net.mime import mime_guess_extension mime_guess_extension("application/json") '.json'
Guess file extension from MIME type.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
mime_type
|
str
|
MIME type string. |
required |
Returns:
| Type | Description |
|---|---|
str | None
|
Extension with dot or None. |
Examples:
>>> mime_guess_extension("application/json")
'.json'
>>> mime_guess_extension("image/png")
'.png'
>>> mime_guess_extension("unknown/type") is None
True
Notes
Uses mimetypes module. Returns extension with leading dot.
mime_guess_type ¶
MIME Type Guesser¶
Guess MIME type from filename.
Examples¶
from rite.net.mime import mime_guess_type mime_guess_type("file.json") 'application/json'
Guess MIME type from filename.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
filename
|
str
|
Filename or path. |
required |
Returns:
| Type | Description |
|---|---|
str | None
|
MIME type string or None. |
Examples:
>>> mime_guess_type("file.json")
'application/json'
>>> mime_guess_type("image.png")
'image/png'
>>> mime_guess_type("unknown.xyz") is None
True
Notes
Uses mimetypes module. Returns None for unknown types.
mime_parse ¶
MIME Type Parser¶
Parse MIME type into main type and subtype.
Examples¶
from rite.net.mime import mime_parse mime_parse("application/json") ('application', 'json')
Parse MIME type into main type and subtype.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
mime_type
|
str
|
MIME type string. |
required |
Returns:
| Type | Description |
|---|---|
tuple[str, str]
|
Tuple of (main_type, subtype). |
Examples:
>>> mime_parse("application/json")
('application', 'json')
>>> mime_parse("text/html; charset=utf-8")
('text', 'html')
>>> mime_parse("image/png")
('image', 'png')
Notes
Strips parameters like charset. Raises ValueError for invalid format.
mime_guess_extension ¶
Extension Guesser¶
Guess file extension from MIME type.
Examples¶
from rite.net.mime import mime_guess_extension mime_guess_extension("application/json") '.json'
Functions¶
mime_guess_extension ¶
Guess file extension from MIME type.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
mime_type
|
str
|
MIME type string. |
required |
Returns:
| Type | Description |
|---|---|
str | None
|
Extension with dot or None. |
Examples:
>>> mime_guess_extension("application/json")
'.json'
>>> mime_guess_extension("image/png")
'.png'
>>> mime_guess_extension("unknown/type") is None
True
Notes
Uses mimetypes module. Returns extension with leading dot.
mime_guess_type ¶
MIME Type Guesser¶
Guess MIME type from filename.
Examples¶
from rite.net.mime import mime_guess_type mime_guess_type("file.json") 'application/json'
Functions¶
mime_guess_type ¶
Guess MIME type from filename.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
filename
|
str
|
Filename or path. |
required |
Returns:
| Type | Description |
|---|---|
str | None
|
MIME type string or None. |
Examples:
>>> mime_guess_type("file.json")
'application/json'
>>> mime_guess_type("image.png")
'image/png'
>>> mime_guess_type("unknown.xyz") is None
True
Notes
Uses mimetypes module. Returns None for unknown types.
mime_parse ¶
MIME Type Parser¶
Parse MIME type into main type and subtype.
Examples¶
from rite.net.mime import mime_parse mime_parse("application/json") ('application', 'json')
Functions¶
mime_parse ¶
Parse MIME type into main type and subtype.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
mime_type
|
str
|
MIME type string. |
required |
Returns:
| Type | Description |
|---|---|
tuple[str, str]
|
Tuple of (main_type, subtype). |
Examples:
>>> mime_parse("application/json")
('application', 'json')
>>> mime_parse("text/html; charset=utf-8")
('text', 'html')
>>> mime_parse("image/png")
('image', 'png')
Notes
Strips parameters like charset. Raises ValueError for invalid format.
request ¶
Request Module¶
HTTP request utilities.
This submodule provides utilities for making HTTP GET and POST requests using standard library.
Examples¶
from rite.net.request import request_get response = request_get("http://example.com") # doctest: +SKIP
Modules¶
request_get ¶
GET Request¶
Make HTTP GET request.
Examples¶
from rite.net.request import request_get response = request_get("https://api.example.com/data") # doctest: +SKIP
Make HTTP GET request.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
url
|
str
|
URL to request. |
required |
headers
|
dict[str, str] | None
|
Optional request headers. |
None
|
timeout
|
float
|
Request timeout in seconds. |
30.0
|
Returns:
| Type | Description |
|---|---|
str
|
Response body as string. |
Raises:
| Type | Description |
|---|---|
URLError
|
On request failure. |
Examples:
Notes
Uses urllib from standard library. For advanced features, use external library like requests.
request_post ¶
POST Request¶
Make HTTP POST request.
Examples¶
from rite.net.request import request_post response = request_post( ... "https://api.example.com/data", ... data={"key": "value"} ... ) # doctest: +SKIP
request_post(url: str, data: dict[str, str] | bytes | None = None, headers: dict[str, str] | None = None, timeout: float = 30.0) -> str
Make HTTP POST request.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
url
|
str
|
URL to request. |
required |
data
|
dict[str, str] | bytes | None
|
Data to send (dict or bytes). |
None
|
headers
|
dict[str, str] | None
|
Optional request headers. |
None
|
timeout
|
float
|
Request timeout in seconds. |
30.0
|
Returns:
| Type | Description |
|---|---|
str
|
Response body as string. |
Raises:
| Type | Description |
|---|---|
URLError
|
On request failure. |
Examples:
Notes
Dict data is URL-encoded automatically. Uses urllib from standard library.
request_get ¶
GET Request¶
Make HTTP GET request.
Examples¶
from rite.net.request import request_get response = request_get("https://api.example.com/data") # doctest: +SKIP
Functions¶
request_get ¶
Make HTTP GET request.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
url
|
str
|
URL to request. |
required |
headers
|
dict[str, str] | None
|
Optional request headers. |
None
|
timeout
|
float
|
Request timeout in seconds. |
30.0
|
Returns:
| Type | Description |
|---|---|
str
|
Response body as string. |
Raises:
| Type | Description |
|---|---|
URLError
|
On request failure. |
Examples:
Notes
Uses urllib from standard library. For advanced features, use external library like requests.
request_post ¶
POST Request¶
Make HTTP POST request.
Examples¶
from rite.net.request import request_post response = request_post( ... "https://api.example.com/data", ... data={"key": "value"} ... ) # doctest: +SKIP
Functions¶
request_post ¶
request_post(url: str, data: dict[str, str] | bytes | None = None, headers: dict[str, str] | None = None, timeout: float = 30.0) -> str
Make HTTP POST request.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
url
|
str
|
URL to request. |
required |
data
|
dict[str, str] | bytes | None
|
Data to send (dict or bytes). |
None
|
headers
|
dict[str, str] | None
|
Optional request headers. |
None
|
timeout
|
float
|
Request timeout in seconds. |
30.0
|
Returns:
| Type | Description |
|---|---|
str
|
Response body as string. |
Raises:
| Type | Description |
|---|---|
URLError
|
On request failure. |
Examples:
Notes
Dict data is URL-encoded automatically. Uses urllib from standard library.
servers ¶
Modules¶
server_http ¶
Rite - HTTP Server Module¶
This module provides a simple HTTP server implementation using Python's built-in http.server library.
Bases: BaseHTTPRequestHandler
HTTP Server Class¶
A simple HTTP server handler class that responds to GET and POST requests.
Attributes¶
None
Methods¶
do_get(): Handle GET requests.
do_post(): Handle POST requests.
_send_response(status_code, content, content_type): Helper method to
send HTTP responses.
_handle_404(): Helper method to handle 404 Not Found responses.
run(server_class, handler_class, port): Static method to run the
server.
staticmethod
¶run(server_class: type[HTTPServer] = HTTPServer, handler_class: type[BaseHTTPRequestHandler] | None = None, port: int = 8000)
Static method to run the HTTP server.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
server_class
|
HTTPServer
|
The HTTP server class. |
HTTPServer
|
handler_class
|
BaseHTTPRequestHandler
|
The HTTP request handler |
None
|
port
|
int
|
Port number to run the server on. |
8000
|
Returns¶
None
server_sqlite ¶
Rite - SQLite Server Module¶
This module provides a simple SQLite server implementation using Python's built-in sqlite3 library.
A SQLite3 server class for handling database operations with enhanced functionality.
This class provides a simplified interface for interacting with SQLite databases, including methods for executing queries, handling transactions, and performing basic CRUD operations.
Attributes¶
db_path (str): Path to the SQLite3 database file.
Methods¶
execute_query(query, params): Executes a SQL query with parameters.
fetch_all(query, params): Fetches all rows from a SQL query.
fetch_one(query, params): Fetches the first row from a SQL query.
insert(table, data_dict): Inserts data into a table.
update(table, data_dict, condition): Updates data in a table based on
a condition.
delete(table, condition): Deletes data from a table based on a condition.
transaction(queries): Executes a series of queries in a transaction.
Initializes the SQLite3 server with the specified database path.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
db_path
|
str
|
Path to the SQLite3 database file. |
required |
Deletes rows from a table.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
table
|
str
|
Name of the table to delete from. |
required |
condition
|
str
|
SQL condition for the deletion. |
required |
Returns¶
None
Executes a SQL query with parameters.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
query
|
str
|
SQL query to execute. |
required |
params
|
Tuple
|
Parameters for the SQL query. |
()
|
Returns¶
None
Fetches all rows from a SQL query.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
query
|
str
|
SQL query to execute. |
required |
params
|
Tuple
|
Parameters for the SQL query. |
()
|
Returns¶
list[Tuple]: List of rows returned by the query.
fetch_one(query: str, params: Sequence[Any] | dict[str, Any] | tuple[Any, ...] = ()) -> tuple[Any, ...]
Fetches the first row from a SQL query.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
query
|
str
|
SQL query to execute. |
required |
params
|
Tuple
|
Parameters for the SQL query. |
()
|
Returns¶
Tuple: The first row returned by the query.
Inserts a new row into a table.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
table
|
str
|
Name of the table to insert data into. |
required |
data_dict
|
dict
|
Dictionary containing column names and values. |
required |
Returns¶
None
Executes a series of queries in a single transaction.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
queries
|
list[tuple[str, Tuple]]
|
A list of queries and their parameters. |
required |
Raises:
| Type | Description |
|---|---|
Error
|
If an error occurs during the transaction. |
url ¶
URL Module¶
URL parsing and manipulation utilities.
This submodule provides utilities for parsing, building, encoding, and decoding URLs.
Examples¶
from rite.net.url import ( ... url_parse, ... url_encode, ... url_decode ... ) url_encode("hello world") 'hello%20world'
Modules¶
url_build ¶
URL Builder¶
Build URL from components.
Examples¶
from rite.net.url import url_build url_build("https", "example.com", "/path", query="q=1") 'https://example.com/path?q=1'
url_build(scheme: str = '', netloc: str = '', path: str = '', params: str = '', query: str | dict[str, str] = '', fragment: str = '') -> str
Build URL from components.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
scheme
|
str
|
URL scheme (http, https, etc.). |
''
|
netloc
|
str
|
Network location (domain:port). |
''
|
path
|
str
|
Path component. |
''
|
params
|
str
|
Parameters (rarely used). |
''
|
query
|
str | dict[str, str]
|
Query string or dict. |
''
|
fragment
|
str
|
Fragment identifier. |
''
|
Returns:
| Type | Description |
|---|---|
str
|
Complete URL string. |
Examples:
>>> url_build("https", "example.com", "/api")
'https://example.com/api'
>>> url_build("http", "test.com", query={"a": "1", "b": "2"})
'http://test.com?a=1&b=2'
Notes
Uses urllib.parse.urlunparse. Query can be string or dict.
url_decode ¶
url_encode ¶
URL Encoder¶
Encode URL component.
Examples¶
from rite.net.url import url_encode url_encode("hello world") 'hello%20world'
url_parse ¶
URL Parser¶
Parse URL into components.
Examples¶
from rite.net.url import url_parse url_parse("https://example.com:8080/path?q=1#frag") # doctest: +SKIP
Parse URL into components.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
url
|
str
|
URL string to parse. |
required |
Returns:
| Type | Description |
|---|---|
ParseResult
|
ParseResult with scheme, netloc, path, params, query, fragment. |
Examples:
>>> result = url_parse("http://example.com/path")
>>> result.scheme
'http'
>>> result.netloc
'example.com'
Notes
Uses urllib.parse.urlparse. Returns ParseResult named tuple.
url_parse_query ¶
Query String Parser¶
Parse query string to dictionary.
Examples¶
from rite.net.url import url_parse_query url_parse_query("a=1&b=2&c=3")
Parse query string to dictionary.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
query
|
str
|
Query string (without ?). |
required |
Returns:
| Type | Description |
|---|---|
dict[str, list[str]]
|
Dictionary with lists of values. |
Examples:
>>> url_parse_query("key=value")
{'key': ['value']}
>>> url_parse_query("a=1&a=2&b=3")
{'a': ['1', '2'], 'b': ['3']}
Notes
Uses urllib.parse.parse_qs. Values are always lists (multiple values supported).
url_build ¶
URL Builder¶
Build URL from components.
Examples¶
from rite.net.url import url_build url_build("https", "example.com", "/path", query="q=1") 'https://example.com/path?q=1'
Functions¶
url_build ¶
url_build(scheme: str = '', netloc: str = '', path: str = '', params: str = '', query: str | dict[str, str] = '', fragment: str = '') -> str
Build URL from components.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
scheme
|
str
|
URL scheme (http, https, etc.). |
''
|
netloc
|
str
|
Network location (domain:port). |
''
|
path
|
str
|
Path component. |
''
|
params
|
str
|
Parameters (rarely used). |
''
|
query
|
str | dict[str, str]
|
Query string or dict. |
''
|
fragment
|
str
|
Fragment identifier. |
''
|
Returns:
| Type | Description |
|---|---|
str
|
Complete URL string. |
Examples:
>>> url_build("https", "example.com", "/api")
'https://example.com/api'
>>> url_build("http", "test.com", query={"a": "1", "b": "2"})
'http://test.com?a=1&b=2'
Notes
Uses urllib.parse.urlunparse. Query can be string or dict.
url_decode ¶
url_encode ¶
URL Encoder¶
Encode URL component.
Examples¶
from rite.net.url import url_encode url_encode("hello world") 'hello%20world'
url_parse ¶
URL Parser¶
Parse URL into components.
Examples¶
from rite.net.url import url_parse url_parse("https://example.com:8080/path?q=1#frag") # doctest: +SKIP
Functions¶
url_parse ¶
Parse URL into components.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
url
|
str
|
URL string to parse. |
required |
Returns:
| Type | Description |
|---|---|
ParseResult
|
ParseResult with scheme, netloc, path, params, query, fragment. |
Examples:
>>> result = url_parse("http://example.com/path")
>>> result.scheme
'http'
>>> result.netloc
'example.com'
Notes
Uses urllib.parse.urlparse. Returns ParseResult named tuple.
url_parse_query ¶
Query String Parser¶
Parse query string to dictionary.
Examples¶
from rite.net.url import url_parse_query url_parse_query("a=1&b=2&c=3")
Functions¶
url_parse_query ¶
Parse query string to dictionary.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
query
|
str
|
Query string (without ?). |
required |
Returns:
| Type | Description |
|---|---|
dict[str, list[str]]
|
Dictionary with lists of values. |
Examples:
>>> url_parse_query("key=value")
{'key': ['value']}
>>> url_parse_query("a=1&a=2&b=3")
{'a': ['1', '2'], 'b': ['3']}
Notes
Uses urllib.parse.parse_qs. Values are always lists (multiple values supported).
validation ¶
Validation Module¶
Network validation utilities.
This submodule provides utilities for validating URLs, emails, IP addresses, and port numbers.
Examples¶
from rite.net.validation import ( ... validation_is_url, ... validation_is_email ... ) validation_is_url("https://example.com") True
Modules¶
validation_is_email ¶
Email Validator¶
Validate email address format.
Examples¶
from rite.net.validation import validation_is_email validation_is_email("user@example.com") True
Validate email address format.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
email
|
str
|
Email address to validate. |
required |
Returns:
| Type | Description |
|---|---|
bool
|
True if valid email format. |
Examples:
>>> validation_is_email("[email protected]")
True
>>> validation_is_email("invalid.email")
False
>>> validation_is_email("[email protected]")
True
Notes
Basic validation using regex. Does not verify email existence.
validation_is_ipv4 ¶
IP Address Validator¶
Validate IPv4 address format.
Examples¶
from rite.net.validation import validation_is_ipv4 validation_is_ipv4("192.168.1.1") True
Validate IPv4 address format.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
ip
|
str
|
IP address string. |
required |
Returns:
| Type | Description |
|---|---|
bool
|
True if valid IPv4 address. |
Examples:
>>> validation_is_ipv4("192.168.1.1")
True
>>> validation_is_ipv4("256.1.1.1")
False
>>> validation_is_ipv4("not an ip")
False
Notes
Uses ipaddress module from standard library. Validates format only.
validation_is_port ¶
Port Validator¶
Validate port number.
Examples¶
from rite.net.validation import validation_is_port validation_is_port(8080) True
Validate port number.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
port
|
int
|
Port number to validate. |
required |
Returns:
| Type | Description |
|---|---|
bool
|
True if valid port (1-65535). |
Examples:
>>> validation_is_port(80)
True
>>> validation_is_port(8080)
True
>>> validation_is_port(0)
False
>>> validation_is_port(70000)
False
Notes
Valid range: 1-65535. Well-known ports: 0-1023.
validation_is_url ¶
URL Validator¶
Validate URL format.
Examples¶
from rite.net.validation import validation_is_url validation_is_url("https://example.com") True
Validate URL format.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
url
|
str
|
URL string to validate. |
required |
require_scheme
|
bool
|
Require scheme (http://, https://). |
True
|
Returns:
| Type | Description |
|---|---|
bool
|
True if valid URL format. |
Examples:
>>> validation_is_url("https://example.com")
True
>>> validation_is_url("not a url")
False
>>> validation_is_url("example.com", require_scheme=False)
True
Notes
Basic validation using regex. Checks format, not existence.
validation_is_email ¶
Email Validator¶
Validate email address format.
Examples¶
from rite.net.validation import validation_is_email validation_is_email("user@example.com") True
Functions¶
validation_is_email ¶
Validate email address format.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
email
|
str
|
Email address to validate. |
required |
Returns:
| Type | Description |
|---|---|
bool
|
True if valid email format. |
Examples:
>>> validation_is_email("[email protected]")
True
>>> validation_is_email("invalid.email")
False
>>> validation_is_email("[email protected]")
True
Notes
Basic validation using regex. Does not verify email existence.
validation_is_ipv4 ¶
IP Address Validator¶
Validate IPv4 address format.
Examples¶
from rite.net.validation import validation_is_ipv4 validation_is_ipv4("192.168.1.1") True
Functions¶
validation_is_ipv4 ¶
Validate IPv4 address format.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
ip
|
str
|
IP address string. |
required |
Returns:
| Type | Description |
|---|---|
bool
|
True if valid IPv4 address. |
Examples:
>>> validation_is_ipv4("192.168.1.1")
True
>>> validation_is_ipv4("256.1.1.1")
False
>>> validation_is_ipv4("not an ip")
False
Notes
Uses ipaddress module from standard library. Validates format only.
validation_is_port ¶
Port Validator¶
Validate port number.
Examples¶
from rite.net.validation import validation_is_port validation_is_port(8080) True
Functions¶
validation_is_port ¶
Validate port number.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
port
|
int
|
Port number to validate. |
required |
Returns:
| Type | Description |
|---|---|
bool
|
True if valid port (1-65535). |
Examples:
>>> validation_is_port(80)
True
>>> validation_is_port(8080)
True
>>> validation_is_port(0)
False
>>> validation_is_port(70000)
False
Notes
Valid range: 1-65535. Well-known ports: 0-1023.
validation_is_url ¶
URL Validator¶
Validate URL format.
Examples¶
from rite.net.validation import validation_is_url validation_is_url("https://example.com") True
Functions¶
validation_is_url ¶
Validate URL format.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
url
|
str
|
URL string to validate. |
required |
require_scheme
|
bool
|
Require scheme (http://, https://). |
True
|
Returns:
| Type | Description |
|---|---|
bool
|
True if valid URL format. |
Examples:
>>> validation_is_url("https://example.com")
True
>>> validation_is_url("not a url")
False
>>> validation_is_url("example.com", require_scheme=False)
True
Notes
Basic validation using regex. Checks format, not existence.
Submodules¶
URL¶
Parse and manipulate URLs.
URL Module¶
URL parsing and manipulation utilities.
This submodule provides utilities for parsing, building, encoding, and decoding URLs.
Examples¶
from rite.net.url import ( ... url_parse, ... url_encode, ... url_decode ... ) url_encode("hello world") 'hello%20world'
Modules¶
url_parse ¶
URL Parser¶
Parse URL into components.
Examples¶
from rite.net.url import url_parse url_parse("https://example.com:8080/path?q=1#frag") # doctest: +SKIP
Functions¶
url_parse ¶
Parse URL into components.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
url
|
str
|
URL string to parse. |
required |
Returns:
| Type | Description |
|---|---|
ParseResult
|
ParseResult with scheme, netloc, path, params, query, fragment. |
Examples:
>>> result = url_parse("http://example.com/path")
>>> result.scheme
'http'
>>> result.netloc
'example.com'
Notes
Uses urllib.parse.urlparse. Returns ParseResult named tuple.
url_build ¶
URL Builder¶
Build URL from components.
Examples¶
from rite.net.url import url_build url_build("https", "example.com", "/path", query="q=1") 'https://example.com/path?q=1'
Functions¶
url_build ¶
url_build(scheme: str = '', netloc: str = '', path: str = '', params: str = '', query: str | dict[str, str] = '', fragment: str = '') -> str
Build URL from components.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
scheme
|
str
|
URL scheme (http, https, etc.). |
''
|
netloc
|
str
|
Network location (domain:port). |
''
|
path
|
str
|
Path component. |
''
|
params
|
str
|
Parameters (rarely used). |
''
|
query
|
str | dict[str, str]
|
Query string or dict. |
''
|
fragment
|
str
|
Fragment identifier. |
''
|
Returns:
| Type | Description |
|---|---|
str
|
Complete URL string. |
Examples:
>>> url_build("https", "example.com", "/api")
'https://example.com/api'
>>> url_build("http", "test.com", query={"a": "1", "b": "2"})
'http://test.com?a=1&b=2'
Notes
Uses urllib.parse.urlunparse. Query can be string or dict.
url_encode ¶
URL Encoder¶
Encode URL component.
Examples¶
from rite.net.url import url_encode url_encode("hello world") 'hello%20world'
url_decode ¶
url_parse_query ¶
Query String Parser¶
Parse query string to dictionary.
Examples¶
from rite.net.url import url_parse_query url_parse_query("a=1&b=2&c=3")
Functions¶
url_parse_query ¶
Parse query string to dictionary.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
query
|
str
|
Query string (without ?). |
required |
Returns:
| Type | Description |
|---|---|
dict[str, list[str]]
|
Dictionary with lists of values. |
Examples:
>>> url_parse_query("key=value")
{'key': ['value']}
>>> url_parse_query("a=1&a=2&b=3")
{'a': ['1', '2'], 'b': ['3']}
Notes
Uses urllib.parse.parse_qs. Values are always lists (multiple values supported).
HTTP¶
HTTP utilities and status codes.
HTTP Module¶
HTTP protocol utilities.
This submodule provides utilities for HTTP status codes, methods, and header parsing.
Examples¶
from rite.net.http import ( ... http_status_code, ... http_is_method ... ) http_status_code(200) 'OK'
Modules¶
http_status_code ¶
HTTP Status Codes¶
HTTP status code constants and utilities.
Examples¶
from rite.net.http import http_status_code http_status_code(200) 'OK'
Functions¶
http_status_code ¶
Get HTTP status description.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
code
|
int
|
HTTP status code. |
required |
Returns:
| Type | Description |
|---|---|
str
|
Status description. |
Examples:
>>> http_status_code(200)
'OK'
>>> http_status_code(404)
'Not Found'
>>> http_status_code(500)
'Internal Server Error'
Notes
Uses http.HTTPStatus from standard library.
http_is_method ¶
HTTP Methods¶
Check if HTTP method is valid.
Examples¶
from rite.net.http import http_is_method http_is_method("GET") True
http_parse_headers ¶
HTTP Headers Parser¶
Parse HTTP headers from string.
Examples¶
from rite.net.http import http_parse_headers headers = "Content-Type: application/json\r\nHost: example.com" http_parse_headers(headers)
Functions¶
http_parse_headers ¶
Parse HTTP headers from string.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
headers_str
|
str
|
Raw headers string. |
required |
Returns:
| Type | Description |
|---|---|
dict[str, str]
|
Dictionary of header name to value. |
Examples:
>>> http_parse_headers("User-Agent: Mozilla/5.0")
{'User-Agent': 'Mozilla/5.0'}
>>> http_parse_headers(
... "Accept: text/html\r\nAccept-Encoding: gzip"
... )
{'Accept': 'text/html', 'Accept-Encoding': 'gzip'}
Notes
Splits on colon (:). Handles \r\n line endings.
Validation¶
Validate network-related formats.
Validation Module¶
Network validation utilities.
This submodule provides utilities for validating URLs, emails, IP addresses, and port numbers.
Examples¶
from rite.net.validation import ( ... validation_is_url, ... validation_is_email ... ) validation_is_url("https://example.com") True
Modules¶
validation_is_url ¶
URL Validator¶
Validate URL format.
Examples¶
from rite.net.validation import validation_is_url validation_is_url("https://example.com") True
Functions¶
validation_is_url ¶
Validate URL format.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
url
|
str
|
URL string to validate. |
required |
require_scheme
|
bool
|
Require scheme (http://, https://). |
True
|
Returns:
| Type | Description |
|---|---|
bool
|
True if valid URL format. |
Examples:
>>> validation_is_url("https://example.com")
True
>>> validation_is_url("not a url")
False
>>> validation_is_url("example.com", require_scheme=False)
True
Notes
Basic validation using regex. Checks format, not existence.
validation_is_email ¶
Email Validator¶
Validate email address format.
Examples¶
from rite.net.validation import validation_is_email validation_is_email("user@example.com") True
Functions¶
validation_is_email ¶
Validate email address format.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
email
|
str
|
Email address to validate. |
required |
Returns:
| Type | Description |
|---|---|
bool
|
True if valid email format. |
Examples:
>>> validation_is_email("[email protected]")
True
>>> validation_is_email("invalid.email")
False
>>> validation_is_email("[email protected]")
True
Notes
Basic validation using regex. Does not verify email existence.
validation_is_ipv4 ¶
IP Address Validator¶
Validate IPv4 address format.
Examples¶
from rite.net.validation import validation_is_ipv4 validation_is_ipv4("192.168.1.1") True
Functions¶
validation_is_ipv4 ¶
Validate IPv4 address format.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
ip
|
str
|
IP address string. |
required |
Returns:
| Type | Description |
|---|---|
bool
|
True if valid IPv4 address. |
Examples:
>>> validation_is_ipv4("192.168.1.1")
True
>>> validation_is_ipv4("256.1.1.1")
False
>>> validation_is_ipv4("not an ip")
False
Notes
Uses ipaddress module from standard library. Validates format only.
validation_is_port ¶
Port Validator¶
Validate port number.
Examples¶
from rite.net.validation import validation_is_port validation_is_port(8080) True
Functions¶
validation_is_port ¶
Validate port number.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
port
|
int
|
Port number to validate. |
required |
Returns:
| Type | Description |
|---|---|
bool
|
True if valid port (1-65535). |
Examples:
>>> validation_is_port(80)
True
>>> validation_is_port(8080)
True
>>> validation_is_port(0)
False
>>> validation_is_port(70000)
False
Notes
Valid range: 1-65535. Well-known ports: 0-1023.