Skip to main content

httpx with css.

Project description

httpc

Sponsoring Hits PyPI - Downloads image image Ruff uv

httpx with CSS

Installation

pip install -U httpc

Examples

>>> import httpc
>>> response = httpc.get("https://www.python.org/")
>>> response.match("strong")  # CSS Matching
[<Node strong>, <Node strong>, <Node strong>]
>>> response.match("strong").bc.text()  # Broadcasting
['Notice:', 'A A', 'relaunched community-run job board']
>>> response.single("div")  # .single() method
ValueError: Query 'div' matched with 47 nodes (error from 'https://www.python.org/').
>>> response.single("div", remain_ok=True)  # .single() method
<Node div>
>>> response.single("#content")
<Node div>
>>> httpc.get("https://python.org")
<Response [301 Moved Permanently]>
>>> httpc.common.get("https://python.org")  # ClientOptions and httpc.common
<Response [200 OK]>
>>> httpc.common.get("https://hypothetical-unstable-website.com/", retry=5)  # retry parameter
Attempting fetch again (ConnectError)...
Attempting fetch again (ConnectError)...
Successfully retrieve 'https://hypothetical-unstable-website.com/'
<Response [200 OK]>
>>> httpc.get("https://httpbin.org/status/400")
<Response [400 BAD REQUEST]>
>>> httpc.get("https://httpbin.org/status/400", raise_for_status=True)  # raise_for_status as parameter
httpx.HTTPStatusError: Client error '400 BAD REQUEST' for url 'https://httpbin.org/status/400'
For more information check: https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/400
>>> httpc.get("https://httpbin.org/status/500", raise_for_status=True, retry=3)
Attempting fetch again (status code 500)...
Attempting fetch again (status code 500)...
Attempting fetch again (status code 500)...
httpx.HTTPStatusError: Server error '500 INTERNAL SERVER ERROR' for url 'https://httpbin.org/status/500'
For more information check: https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/500

Release Note

  • 0.9.0: catcher에서 헤더가 다를 경우 다른 request로 취급하는 distinguish_headers 추가, ValueError 대신 RequestNotFoundError 사용, headers 최신화, 기타 리팩토링
  • 0.8.0: httpc-clean 기능 data와 cookie 파라미터도 받도록 확장, 파이썬 3.10 이상으로 지원 범위 좁힘, catcher.install 함수를 catcher.install_httpx으로 이름 변경, retry 설정 시 httpx의 오류에만 retry하도록 변경
  • 0.7.0: Add httpc.catcher (from httpx-catcher), add httpc-clean CLI script for sanitizing headers
  • 0.6.0: Remove deprecated parameters, remove ClientOptions
  • 0.5.0: Use Lexbor as default backend, fix and improve retry and raise_for_status
  • 0.4.0: Fix incorrect type hint, rename CSSTool to ParseTool, CSSResponse to Response, bugfixes and small improvements
  • 0.3.0: Add new parameter, remove select method, rename css to match from CSSTool, remove cache_api.py (unused script), add url note, retry if server error on raise_for_status, bugfix
  • 0.2.0: Initial release

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

httpc-0.9.0.tar.gz (38.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

httpc-0.9.0-py3-none-any.whl (22.8 kB view details)

Uploaded Python 3

File details

Details for the file httpc-0.9.0.tar.gz.

File metadata

  • Download URL: httpc-0.9.0.tar.gz
  • Upload date:
  • Size: 38.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-httpx/0.28.1

File hashes

Hashes for httpc-0.9.0.tar.gz
Algorithm Hash digest
SHA256 17e022d950f115c464bcf0050c340e0eca3f85f9ad00f2b751ba1e57ff494cc1
MD5 b1a72d895659f0d32201fd7db2e0fcbf
BLAKE2b-256 e91db5fe3d1a964d3d2cb04446634088d9d9889c3255b19e2072d3adccb5f9c3

See more details on using hashes here.

File details

Details for the file httpc-0.9.0-py3-none-any.whl.

File metadata

  • Download URL: httpc-0.9.0-py3-none-any.whl
  • Upload date:
  • Size: 22.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-httpx/0.28.1

File hashes

Hashes for httpc-0.9.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d25c683b16910c1f4a33d8a0de1856a2633c3653d307b7bb55b40e8107e7eebd
MD5 2c0c10e6eb04fa9a6a65a719e9e0a806
BLAKE2b-256 61bd024e4d3bc053bb7e374fb41c75409e8ff6f3c972da97d92512f632a77a23

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page