skillfed

pyobjc-framework-CFNetwork

Wrappers for the framework CFNetwork on macOS

pyobjc-framework-cfnetwork v12.2.2 664.3K downloads/30d#5,431 on PyPI803
Permissive license MIT Active released

What it is and what it does

pyobjc-framework-cfnetwork is a thin wrapper layer that exposes Apple's CFNetwork framework to Python code running on macOS. CFNetwork provides low-level abstractions for network protocols, and this package makes those abstractions callable from Python by bridging Objective-C to CPython. The wrapper is part of the larger PyObjC project and depends on pyobjc-core and pyobjc-framework-Cocoa to handle the translation between Python and Objective-C semantics.

The package is most useful for macOS-specific networking tasks where you need direct access to system-level network APIs—particularly proxy autoconfiguration scripts and network diagnostics. Because it wraps native framework code rather than reimplementing it, it gives you access to the same APIs that native macOS applications use, but from Python. The trade-off is that it only works on macOS and requires knowledge of both the CFNetwork API (documented by Apple) and PyObjC's conventions for calling Objective-C from Python.

Use it for:

  • Detect and configure proxy settings automatically on macOS using CFNetwork's proxy autoconfiguration APIs.
  • Implement network diagnostics tools on macOS that need access to low-level networking information.
  • Build macOS system utilities that require direct interaction with the CFNetwork framework.
  • Integrate CFNetwork capabilities into cross-platform Python applications with macOS-specific code paths.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Provides Python bindings to macOS's CFNetwork framework, enabling access to networking abstractions including proxy autoconfiguration and network diagnostics APIs.

Yes, if you are developing on macOS and need direct access to CFNetwork APIs for proxy configuration or network diagnostics. The package is actively maintained, has no known vulnerabilities, and carries a permissive MIT license. Install friction is moderate due to platform specificity and compiled dependencies, but that is unavoidable for native framework bindings. Not applicable for non-macOS development.

Install

pyobjc-framework-cfnetwork on PyPI

pip

pip install pyobjc-framework-cfnetwork

uv

uv add pyobjc-framework-cfnetwork

poetry

poetry add pyobjc-framework-cfnetwork

Installing pyobjc-framework-CFNetwork

Before you install

Medium install friction due to platform-specific wheels (macOS only, multiple Python versions). Active maintenance with recent release (3 days old) and steady repository activity; requires pyobjc-core and pyobjc-framework-Cocoa as runtime dependencies.

License in practice

MIT license permits free use, modification, and distribution with minimal restrictions—suitable for both open-source and proprietary projects.

Quickstart

pip install pyobjc-framework-cfnetwork

from CFNetwork import CFNetworkCopyProxiesForAutoConfigurationScript
# Access CFNetwork APIs through the imported module

macOS only; requires Python 3.10 or later; depends on pyobjc-core and pyobjc-framework-Cocoa.

Verify before relying

  • Specific CFNetwork APIs exposed and their completeness relative to the native framework.
  • Whether proxy autoconfiguration and diagnostics APIs are fully functional or have known limitations.
  • Performance characteristics when calling into Objective-C from Python via these bindings.

Package facts

License MIT (permissive)
Python support supports the current Python release (>=3.10)
Install friction medium — platform-specific wheel
Runtime dependencies 2 — pyobjc-core, pyobjc-framework-Cocoa
Maintenance actively maintained — 3 days since the last release
Last repo commit
First released
Downloads 664,315/month — #5,431 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: pyobjc_framework_cfnetwork-12.2.2-cp310-cp310-macosx_10_9_universal2.whl; pyobjc_framework_cfnetwork-12.2.2-cp311-cp311-macosx_10_9_universal2.whl; pyobjc_framework_cfnetwork-12.2.2-cp312-cp312-macosx_10_13_universal2.whl; pyobjc_framework_cfnetwork-12.2.2-cp313-cp313-macosx_10_13_universal2.whl; pyobjc_framework_cfnetwork-12.2.2-cp313-cp313t-macosx_10_13_universal2.whl; pyobjc_framework_cfnetwork-12.2.2-cp314-cp314-macosx_10_15_universal2.whl; pyobjc_framework_cfnetwork-12.2.2-cp314-cp314t-macosx_10_15_universal2.whl; pyobjc_framework_cfnetwork-12.2.2-cp315-cp315-macosx_10_15_universal2.whl; pyobjc_framework_cfnetwork-12.2.2-cp315-cp315t-macosx_10_15_universal2.whl

Keywords: PyObjC, CFNetwork

Development Status :: 5 - Production/StableEnvironment :: ConsoleEnvironment :: MacOS X :: CocoaIntended Audience :: DevelopersNatural Language :: EnglishOperating System :: MacOS :: MacOS XProgramming Language :: Objective CProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3 :: OnlyProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Programming Language :: Python :: 3.15Programming Language :: Python :: Free Threading :: 3 - StableProgramming Language :: Python :: Implementation :: CPythonTopic :: Software Development :: Libraries :: Python ModulesTopic :: Software Development :: User Interfaces

Tags

macos cfnetwork python bindingsproxy autoconfiguration pythonnetwork diagnostics macospyobjc cfnetwork wrappercocoa networking frameworkmacos network protocols python
macos-nativeobjective-c-bindings

More Python Modules packages

idna

Converts domain names between Unicode and…

permissive · top 100 on PyPI

setuptools

Setuptools is a Python build backend and…

permissive · top 100 on PyPI

PyYAML

PyYAML parses and emits YAML 1.1 data format,…

permissive · top 100 on PyPI

pydantic

Pydantic validates Python data structures…

permissive · top 100 on PyPI

annotated-types

Provides reusable metadata objects for use with…

permissive · top 100 on PyPI

typing-inspection

Provides runtime tools to inspect and…

permissive · top 100 on PyPI

pyobjc-framework-Network

Provides Python bindings to Apple's Network…

permissive · top 15,000 on PyPI

pyobjc-framework-ThreadNetwork

Provides Python bindings to Apple's…

permissive · top 15,000 on PyPI

pyobjc-framework-NetworkExtension

Provides Python bindings to Apple's…

permissive · top 15,000 on PyPI

pyobjc-framework-CoreServices

Provides Python bindings to macOS's…

permissive · top 15,000 on PyPI

pyobjc-framework-MultipeerConnectivity

Provides Python bindings to macOS's…

permissive · top 15,000 on PyPI

pyobjc-framework-SystemConfiguration

Provides Python bindings to macOS's…

permissive · top 15,000 on PyPI

pyobjc-framework-Carbon

Provides Python bindings to macOS's Carbon…

permissive · top 15,000 on PyPI

pyobjc-framework-FSKit

Provides Python bindings to macOS's FSKit…

permissive · top 15,000 on PyPI

pyobjc-framework-BrowserEngineKit

Provides Python bindings to Apple's…

permissive · top 15,000 on PyPI

pyobjc-framework-SystemExtensions

Provides Python bindings to macOS's…

permissive · top 15,000 on PyPI