{"id":24326,"library":"pyfaup-rs","title":"pyfaup-rs","description":"Python bindings for faup-rs, a Rust library for fast URL parsing and normalization. Current version 0.4.6, Python >=3.8, active development on GitHub.","status":"active","version":"0.4.6","language":"python","source_language":"en","source_url":"https://github.com/ail-project/faup-rs","tags":["url","parsing","binding","rust"],"install":[{"cmd":"pip install pyfaup-rs","lang":"bash","label":"Install from PyPI"}],"dependencies":[],"imports":[{"note":"The correct module is 'faup', not 'pyfaup'.","wrong":"import pyfaup","symbol":"faup","correct":"from faup import faup"}],"quickstart":{"code":"from faup import faup\n\nparser = faup()\nresult = parser.parse_url(\"https://example.com/path?q=1#frag\")\nprint(result.scheme, result.host, result.port, result.path, result.query, result.fragment)","lang":"python","description":"Parse a URL and access components."},"warnings":[{"fix":"Use 'from faup import faup' instead.","message":"The library uses 'faup' as the module name, not 'pyfaup'. Many users incorrectly import 'pyfaup'.","severity":"gotcha","affected_versions":"all"},{"fix":"Ensure URLs are well-formed. Handle exceptions when parsing.","message":"The parser only parses URLs; it does not validate or encode/decode them. Invalid URLs may raise an exception.","severity":"gotcha","affected_versions":"all"}],"env_vars":null,"last_verified":"2026-05-01T00:00:00.000Z","next_check":"2026-07-30T00:00:00.000Z","problems":[{"fix":"Use 'from faup import faup'.","cause":"Trying to import 'pyfaup' instead of 'faup'.","error":"ModuleNotFoundError: No module named 'pyfaup'"},{"fix":"Check the result before accessing attributes: result = parser.parse_url(url); if result: print(result.host)","cause":"For relative URLs or invalid input, parse_url may return None.","error":"AttributeError: 'NoneType' object has no attribute 'host'"}],"ecosystem":"pypi","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}