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.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

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.13.0.tar.gz (98.8 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.13.0-py3-none-any.whl (27.4 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for httpc-0.13.0.tar.gz
Algorithm Hash digest
SHA256 d4d68b106adec36ea6d27d3a2a2514800b88b9f5b4668c420265631295dca30d
MD5 893aeaf0cbb0c2870a8e11d097e84f85
BLAKE2b-256 11535972855088c3a86fe24885f77dc74e7dbb3250b2bf2f65d9879a97527400

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for httpc-0.13.0-py3-none-any.whl
Algorithm Hash digest
SHA256 def71207e9e6069ade53fb8f2daf442de11dad2c8c771afa7f4f8ab06372352a
MD5 db7a46a9ffd2d4f17514f1aca667dbb0
BLAKE2b-256 348452315512dd1c235174d5931439a0c963095f39df0d32289a18378e494c41

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