Skip to main content

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.14.0: httpc select subcommand 추가, 기본 headers 변경, cookie_utils 추가
  • 0.13.0: next_data 처리 방식 변경
  • 0.12.0: httpc.catcher의 데이터베이스 형식 변경, migration 추가, httpc.catcher migrate CLI 명령어 추가
  • 0.11.0: httpc를 통해 cli 접근, httpc cookies 추가, 기타 다양한 기능 개선
  • 0.10.0.post1: httpc-clean에서 method 입력 (-X)도 인식, ParseTool.extract_next_data와 ParseTool.next_data 추가, httpc-next-data cli 추가, 기타 버그 수정 및 리팩토링
  • 0.9.1: 버그 수정 및 개선
  • 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

Metadata

Release files for httpc 0.14.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for httpc 0.14.0
File Size Uploaded
httpc-0.14.0.tar.gz 99.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for httpc 0.14.0
File Interpreter ABI Platform
httpc-0.14.0-py3-none-any.whl Python 3 none any Details

Total release size: 128.7 kB

Release files / httpc-0.14.0.tar.gz

Download URL httpc-0.14.0.tar.gz
Size 99.9 kB
Tags Source
SHA-256 checksum
How to use checksums
9f2142d32555b5610afed1e897c399a3a2c93147c579d574caa7200e3c347737
BLAKE2b-256 checksum
How to use checksums
8a7e6c49a4f37b8f12877705f43f60631174c39e068c677573882d7654afd037
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via Hatch/1.16.5 cpython/3.13.13 HTTPX/0.28.1

Release files / httpc-0.14.0-py3-none-any.whl

Download URL httpc-0.14.0-py3-none-any.whl
Size 28.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
4c464733e8cb77ca388daed62937bc02661df9a162613f2bc16b84386e92871f
BLAKE2b-256 checksum
How to use checksums
02494a0f47d7ea547445939225e49eb2c0dc3919112114047c8c309f9f7f9292
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via Hatch/1.16.5 cpython/3.13.13 HTTPX/0.28.1

Release history Release notifications | RSS feed

This release

0.14.0 This release

2 release files

0.13.0

2 release files

0.11.0

2 release files

0.9.1

2 release files

0.9.0

2 release files

0.8.0

2 release files

0.7.0

2 release files

0.6.0

2 release files

0.5.0

2 release files

0.4.1

2 release files

0.4.0

2 release files

0.3.0

2 release files

0.2.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page