Skip to main content

Wrapper package for OpenCV python bindings.

Reason this release was yanked:

Release deprecated

Project description

Downloads

OpenCV on Wheels

Unofficial pre-built OpenCV packages for Python.

Installation and Usage

  1. If you have previous/other manually installed (= not installed via pip) version of OpenCV installed (e.g. cv2 module in the root of Python's site-packages), remove it before installation to avoid conflicts.

  2. Select the correct package for your environment:

    There are four different packages and you should select only one of them. Do not install multiple different packages in the same environment. There is no plugin architecture: all the packages use the same namespace (cv2). If you installed multiple different packages in the same environment, uninstall them all with pip uninstall and reinstall only one package.

    a. Packages for standard desktop environments (Windows, macOS, almost any GNU/Linux distribution)

    • run pip install opencv-python if you need only main modules
    • run pip install opencv-contrib-python if you need both main and contrib modules (check extra modules listing from OpenCV documentation)

    b. Packages for server (headless) environments

    These packages do not contain any GUI functionality. They are smaller and suitable for more restricted environments.

    • run pip install opencv-python-headless if you need only main modules
    • run pip install opencv-contrib-python-headless if you need both main and contrib modules (check extra modules listing from OpenCV documentation)
  3. Import the package:

    import cv2

    All packages contain haarcascade files. cv2.data.haarcascades can be used as a shortcut to the data folder. For example:

    cv2.CascadeClassifier(cv2.data.haarcascades + "haarcascade_frontalface_default.xml")

  4. Read OpenCV documentation

  5. Before opening a new issue, read the FAQ below and have a look at the other issues which are already open.

Frequently Asked Questions

Q: Do I need to install also OpenCV separately?

A: No, the packages are special wheel binary packages and they already contain statically built OpenCV binaries.

Q: Pip fails with Could not find a version that satisfies the requirement ...?

A: Most likely the issue is related to too old pip and can be fixed by running pip install --upgrade pip. Note that the wheel (especially manylinux) format does not currently support properly ARM architecture so there are no packages for ARM based platforms in PyPI. However, opencv-python packages for Raspberry Pi can be found from https://www.piwheels.org/.

Q: Import fails on Windows: ImportError: DLL load failed: The specified module could not be found.?

A: If the import fails on Windows, make sure you have Visual C++ redistributable 2015 installed. If you are using older Windows version than Windows 10 and latest system updates are not installed, Universal C Runtime might be also required.

Windows N and KN editions do not include Media Feature Pack which is required by OpenCV. If you are using Windows N or KN edition, please install also Windows Media Feature Pack.

If you have Windows Server 2012+, media DLLs are probably missing too; please install the Feature called "Media Foundation" in the Server Manager. Beware, some posts advise to install "Windows Server Essentials Media Pack", but this one requires the "Windows Server Essentials Experience" role, and this role will deeply affect your Windows Server configuration (by enforcing active directory integration etc.); so just installing the "Media Foundation" should be a safer choice.

If the above does not help, check if you are using Anaconda. Old Anaconda versions have a bug which causes the error, see this issue for a manual fix.

If you still encounter the error after you have checked all the previous solutions, download Dependencies and open the cv2.pyd (located usually at C:\Users\username\AppData\Local\Programs\Python\PythonXX\Lib\site-packages\cv2) file with it to debug missing DLL issues.

Q: I have some other import errors?

A: Make sure you have removed old manual installations of OpenCV Python bindings (cv2.so or cv2.pyd in site-packages).

Q: Why the packages do not include non-free algorithms?

A: Non-free algorithms such as SURF are not included in these packages because they are patented / non-free and therefore cannot be distributed as built binaries. Note that SIFT is included in the builds due to patent expiration since OpenCV versions 4.3.0 and 3.4.10. See this issue for more info: https://github.com/skvark/opencv-python/issues/126

Q: Why the package and import are different (opencv-python vs. cv2)?

A: It's easier for users to understand opencv-python than cv2 and it makes it easier to find the package with search engines. cv2 (old interface in old OpenCV versions was named as cv) is the name that OpenCV developers chose when they created the binding generators. This is kept as the import name to be consistent with different kind of tutorials around the internet. Changing the import name or behaviour would be also confusing to experienced users who are accustomed to the import cv2.

Documentation for opencv-python

AppVeyor CI test status (Windows) Travis CI test status (Linux and OS X)

The aim of this repository is to provide means to package each new OpenCV release for the most used Python versions and platforms.

Build process

The project is structured like a normal Python package with a standard setup.py file. The build process for a single entry in the build matrices is as follows (see for example appveyor.yml file):

  1. In Linux and MacOS build: get OpenCV's optional C dependencies that we compile against

  2. Checkout repository and submodules

    • OpenCV is included as submodule and the version is updated manually by maintainers when a new OpenCV release has been made
    • Contrib modules are also included as a submodule
  3. Find OpenCV version from the sources

  4. Install Python dependencies

    • setup.py installs the dependencies itself, so you need to run it in an environment where you have the rights to install modules with Pip for the running Python
  5. Build OpenCV

    • tests are disabled, otherwise build time increases too much
    • there are 4 build matrix entries for each build combination: with and without contrib modules, with and without GUI (headless)
    • Linux builds run in manylinux Docker containers (CentOS 5)
  6. Rearrange OpenCV's build result, add our custom files and generate wheel

  7. Linux and macOS wheels are transformed with auditwheel and delocate, correspondingly

  8. Install the generated wheel

  9. Test that Python can import the library and run some sanity checks

  10. Use twine to upload the generated wheel to PyPI (only in release builds)

Steps 1--5 are handled by setup.py bdist_wheel.

The build can be customized with environment variables. In addition to any variables that OpenCV's build accepts, we recognize:

  • ENABLE_CONTRIB and ENABLE_HEADLESS. Set to 1 to build the contrib and/or headless version
  • CMAKE_ARGS. Additional arguments for OpenCV's CMake invocation. You can use this to make a custom build.

Manual builds

If some dependency is not enabled in the pre-built wheels, you can also run the setup.py locally to create a custom wheel.

  1. Clone this repository: git clone --recursive https://github.com/skvark/opencv-python.git
  2. Go to the root of the repository
  3. Add custom Cmake flags if needed, for example: export CMAKE_FLAGS="-DSOME_FLAG=ON -DSOME_OTHER_FLAG=OFF"
  4. Run python setup.py bdist_wheel
    • Optionally use the manylinux images as a build hosts if maximum portability is needed (and run auditwheel for the wheel after build)
  5. You'll have the wheel file in the dist folder and you can do with that whatever you wish

Licensing

Opencv-python package (scripts in this repository) is available under MIT license.

OpenCV itself is available under 3-clause BSD License.

Third party package licenses are at LICENSE-3RD-PARTY.txt.

All wheels ship with FFmpeg licensed under the LGPLv2.1.

Non-headless Linux wheels ship with Qt 4.8.7 licensed under the LGPLv2.1.

Non-headless MacOS wheels ship with Qt 5 licensed under the LGPLv3.

The packages include also other binaries. Full list of licenses can be found from LICENSE-3RD-PARTY.txt.

Versioning

find_version.py script searches for the version information from OpenCV sources and appends also a revision number specific to this repository to the version string.

Releases

A release is made and uploaded to PyPI when a new tag is pushed to master branch. These tags differentiate packages (this repo might have modifications but OpenCV version stays same) and should be incremented sequentially. In practice, release version numbers look like this:

cv_major.cv_minor.cv_revision.package_revision e.g. 3.1.0.0

The master branch follows OpenCV master branch releases. 3.4 branch follows OpenCV 3.4 bugfix releases.

Development builds

Every commit to the master branch of this repo will be built. Possible build artifacts use local version identifiers:

cv_major.cv_minor.cv_revision+git_hash_of_this_repo e.g. 3.1.0+14a8d39

These artifacts can't be and will not be uploaded to PyPI.

Manylinux wheels

Linux wheels are built using manylinux. These wheels should work out of the box for most of the distros (which use GNU C standard library) out there since they are built against an old version of glibc.

The default manylinux images have been extended with some OpenCV dependencies. See Docker folder for more info.

Supported Python versions

Python 3.x releases are provided for officially supported versions (not in EOL).

Currently, builds for following Python versions are provided:

  • 3.5
  • 3.6
  • 3.7
  • 3.8

Backward compatibility

Starting from 4.2.0 and 3.4.9 builds the macOS Travis build environment was updated to XCode 9.4. The change effectively dropped support for older than 10.13 macOS versions.

Starting from 4.3.0 and 3.4.10 builds the Linux build environment was updated from manylinux1 to manylinux2014. This dropped support for old Linux distributions.

Release history Release notifications | RSS feed

Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

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

opencv_contrib_python_headless-4.3.0.36-cp38-cp38-win_amd64.whl (39.9 MB view details)

Uploaded CPython 3.8Windows x86-64

opencv_contrib_python_headless-4.3.0.36-cp38-cp38-win32.whl (29.8 MB view details)

Uploaded CPython 3.8Windows x86

opencv_contrib_python_headless-4.3.0.36-cp38-cp38-macosx_10_9_x86_64.whl (55.1 MB view details)

Uploaded CPython 3.8macOS 10.9+ x86-64

opencv_contrib_python_headless-4.3.0.36-cp37-cp37m-win_amd64.whl (39.9 MB view details)

Uploaded CPython 3.7mWindows x86-64

opencv_contrib_python_headless-4.3.0.36-cp37-cp37m-win32.whl (29.8 MB view details)

Uploaded CPython 3.7mWindows x86

opencv_contrib_python_headless-4.3.0.36-cp37-cp37m-macosx_10_9_x86_64.whl (55.1 MB view details)

Uploaded CPython 3.7mmacOS 10.9+ x86-64

opencv_contrib_python_headless-4.3.0.36-cp36-cp36m-win_amd64.whl (39.9 MB view details)

Uploaded CPython 3.6mWindows x86-64

opencv_contrib_python_headless-4.3.0.36-cp36-cp36m-win32.whl (29.8 MB view details)

Uploaded CPython 3.6mWindows x86

opencv_contrib_python_headless-4.3.0.36-cp36-cp36m-macosx_10_9_x86_64.whl (55.1 MB view details)

Uploaded CPython 3.6mmacOS 10.9+ x86-64

opencv_contrib_python_headless-4.3.0.36-cp35-cp35m-win_amd64.whl (39.9 MB view details)

Uploaded CPython 3.5mWindows x86-64

opencv_contrib_python_headless-4.3.0.36-cp35-cp35m-win32.whl (29.8 MB view details)

Uploaded CPython 3.5mWindows x86

File details

Details for the file opencv_contrib_python_headless-4.3.0.36-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: opencv_contrib_python_headless-4.3.0.36-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 39.9 MB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.1.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.8.0

File hashes

Hashes for opencv_contrib_python_headless-4.3.0.36-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 9829cafd01fee6ef770c178bd9d231ba70c1ee701e05b94db6303fa674fe4a45
MD5 56310525620a048ac56b32cf9d0030a0
BLAKE2b-256 dc8bfa81fbf337f6308d2e79672e5425dc0625574a72c097745f47382156a5e0

See more details on using hashes here.

File details

Details for the file opencv_contrib_python_headless-4.3.0.36-cp38-cp38-win32.whl.

File metadata

  • Download URL: opencv_contrib_python_headless-4.3.0.36-cp38-cp38-win32.whl
  • Upload date:
  • Size: 29.8 MB
  • Tags: CPython 3.8, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.1.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.8.0

File hashes

Hashes for opencv_contrib_python_headless-4.3.0.36-cp38-cp38-win32.whl
Algorithm Hash digest
SHA256 3278ed430f326520f8409a13cba38982ea7bc2588d32ea51d19099d3d1fad5f6
MD5 5cf692327044cde79be332731e833dd6
BLAKE2b-256 9e6ee20c533af6a47db13b3a8b575af47fa4a3afd6526231d6c6f16a2bfffaa1

See more details on using hashes here.

File details

Details for the file opencv_contrib_python_headless-4.3.0.36-cp38-cp38-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for opencv_contrib_python_headless-4.3.0.36-cp38-cp38-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7683b992b9ce0e1517c3033f9ba98492ff839fa4af45b2d781b520b3faa18c12
MD5 9f0a8eba77f4d49d3cc10acdfb8e4c49
BLAKE2b-256 f4adef5b5b32d7fbb4cac6c6edea0aaa82155b419b322d9391ed21bb7dc26043

See more details on using hashes here.

File details

Details for the file opencv_contrib_python_headless-4.3.0.36-cp38-cp38-manylinux2014_i686.whl.

File metadata

File hashes

Hashes for opencv_contrib_python_headless-4.3.0.36-cp38-cp38-manylinux2014_i686.whl
Algorithm Hash digest
SHA256 741f569b868cfce203ca1e480b07dad0083457ddcc5a4582abc6b0765d82a364
MD5 b8f4c475793caa375d129473f2c42669
BLAKE2b-256 84e1faea8ec0dc2abdc30eac65e755436bd21b7f7dcdb38afb90ec88f1e9a20a

See more details on using hashes here.

File details

Details for the file opencv_contrib_python_headless-4.3.0.36-cp38-cp38-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for opencv_contrib_python_headless-4.3.0.36-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 933092831b70b60c51ce430c06059bb52faca97542e7873d6fc67775f8e0553b
MD5 d41e29ccfbdbb6ce1cce85b81a48b4d9
BLAKE2b-256 cc5bf9e9887475caab2eb8434807f8c16754b5b641c894fb611b371900f35146

See more details on using hashes here.

File details

Details for the file opencv_contrib_python_headless-4.3.0.36-cp37-cp37m-win_amd64.whl.

File metadata

File hashes

Hashes for opencv_contrib_python_headless-4.3.0.36-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 fcccffda825697491f2b31f06fa0bc8afd1149630b78cfc6ff8c245836c64edd
MD5 c7f62c83223cd9921b2fe9333891bab9
BLAKE2b-256 8c4e3663883ec665212c5815aaac2a2e9317a02fac7efdb15dda33cf18c991df

See more details on using hashes here.

File details

Details for the file opencv_contrib_python_headless-4.3.0.36-cp37-cp37m-win32.whl.

File metadata

  • Download URL: opencv_contrib_python_headless-4.3.0.36-cp37-cp37m-win32.whl
  • Upload date:
  • Size: 29.8 MB
  • Tags: CPython 3.7m, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.1.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.7.5

File hashes

Hashes for opencv_contrib_python_headless-4.3.0.36-cp37-cp37m-win32.whl
Algorithm Hash digest
SHA256 5b4574a088a8f70f6522974af056189e81f70179a6cf07511396003b04effaa2
MD5 6f33d154e7ceff113fa9f2d5bee1888f
BLAKE2b-256 fee71b73907b034717fddabe0039b554f2133992fd016177c16c3e3ffce18689

See more details on using hashes here.

File details

Details for the file opencv_contrib_python_headless-4.3.0.36-cp37-cp37m-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for opencv_contrib_python_headless-4.3.0.36-cp37-cp37m-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ec1b1274c52db3094514f10380fa2dc7f9e79b4e604da719a17f8a263c95368f
MD5 38372062e328d6913d5e4860d2f62dcd
BLAKE2b-256 8c6efbfbc42e708c79e1771598ab76e11691caae5c5ba3394b7b683f637fbeb4

See more details on using hashes here.

File details

Details for the file opencv_contrib_python_headless-4.3.0.36-cp37-cp37m-manylinux2014_i686.whl.

File metadata

File hashes

Hashes for opencv_contrib_python_headless-4.3.0.36-cp37-cp37m-manylinux2014_i686.whl
Algorithm Hash digest
SHA256 19ac7caf8c2c1db57e39833b149e7894d9e84473aca5e2de417cefca4a34ae01
MD5 51fe3eb9fda9237a7fd83b3e5a93212f
BLAKE2b-256 472afc8b8204a1030278bad819203ec3a04bf61f28215269ca64ab32f447598f

See more details on using hashes here.

File details

Details for the file opencv_contrib_python_headless-4.3.0.36-cp37-cp37m-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for opencv_contrib_python_headless-4.3.0.36-cp37-cp37m-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 efbc645d7082a7430a68715e2d6d9d2ba0ec1a31c52fa11a978fa41637b1f32b
MD5 bf6ca65368784a63f2a15b8f77698afa
BLAKE2b-256 2e70d01bb1ddf016edfbaa12a8a22d863225ad67ebad5785ab676c8f75e3fd44

See more details on using hashes here.

File details

Details for the file opencv_contrib_python_headless-4.3.0.36-cp36-cp36m-win_amd64.whl.

File metadata

File hashes

Hashes for opencv_contrib_python_headless-4.3.0.36-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 db7de8b529ffad758f588daddcdd57ceda7e67bfaa4451f7d0577f0b05b33274
MD5 ccdd79089215ba86df792efaeaec9f5d
BLAKE2b-256 28c1560ec915fa440a704f4e089eeebc494f502e71bfc7363fbb9453c0058e65

See more details on using hashes here.

File details

Details for the file opencv_contrib_python_headless-4.3.0.36-cp36-cp36m-win32.whl.

File metadata

  • Download URL: opencv_contrib_python_headless-4.3.0.36-cp36-cp36m-win32.whl
  • Upload date:
  • Size: 29.8 MB
  • Tags: CPython 3.6m, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.1.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.6.8

File hashes

Hashes for opencv_contrib_python_headless-4.3.0.36-cp36-cp36m-win32.whl
Algorithm Hash digest
SHA256 ec6104352cf677c8105ab7dc7fac768475b4ea0cf4d453b308020f147c04783c
MD5 9c935478edaae99d262ccb469ba6ad7b
BLAKE2b-256 6c2ee3865732b2a122b33d37ff6b8f5e6661c7872d5f6c491369498a95b3ee2c

See more details on using hashes here.

File details

Details for the file opencv_contrib_python_headless-4.3.0.36-cp36-cp36m-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for opencv_contrib_python_headless-4.3.0.36-cp36-cp36m-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ffa659da78f7a14221e9d4ece3f14465033080b27ba972d8dab673a7424b49f4
MD5 0e487599bc91fd323387bcaa02103f3f
BLAKE2b-256 a190b2982491b86fc8f39153162da5775081361ce731156df9a248c55396c5c8

See more details on using hashes here.

File details

Details for the file opencv_contrib_python_headless-4.3.0.36-cp36-cp36m-manylinux2014_i686.whl.

File metadata

File hashes

Hashes for opencv_contrib_python_headless-4.3.0.36-cp36-cp36m-manylinux2014_i686.whl
Algorithm Hash digest
SHA256 db531f11227a4eae019d01f65bd67fe813d9b299bbc8300327e14567a812a196
MD5 3db99950508f802e2d1f1d53a80fc2b9
BLAKE2b-256 b59d01690b182430ec84bcd93f76663801b2a8e682e36ad45eaad63a85e98b16

See more details on using hashes here.

File details

Details for the file opencv_contrib_python_headless-4.3.0.36-cp36-cp36m-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for opencv_contrib_python_headless-4.3.0.36-cp36-cp36m-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 1acdd607d4352404015563a6553941be8e5856f0f6920d7cf92c1521bd637e19
MD5 f63f8930d5a4c50c6c06c1b09284af7e
BLAKE2b-256 be8aaf9feb61af85ff22153cc902872339fd833564d91bcb21ded8bf400f27f3

See more details on using hashes here.

File details

Details for the file opencv_contrib_python_headless-4.3.0.36-cp35-cp35m-win_amd64.whl.

File metadata

File hashes

Hashes for opencv_contrib_python_headless-4.3.0.36-cp35-cp35m-win_amd64.whl
Algorithm Hash digest
SHA256 983813b271d2076e2a09ada9e460bf5c2273b1b618b724c98239951173b2461e
MD5 0161c7e3cec57c4e5892fb29a749523a
BLAKE2b-256 895cfac1e585f0ff9045ffee64467610c9d116dcb4e2148aa34f6fff0b696a0d

See more details on using hashes here.

File details

Details for the file opencv_contrib_python_headless-4.3.0.36-cp35-cp35m-win32.whl.

File metadata

  • Download URL: opencv_contrib_python_headless-4.3.0.36-cp35-cp35m-win32.whl
  • Upload date:
  • Size: 29.8 MB
  • Tags: CPython 3.5m, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.1.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.5.4

File hashes

Hashes for opencv_contrib_python_headless-4.3.0.36-cp35-cp35m-win32.whl
Algorithm Hash digest
SHA256 5147413ea9d51b8896e69fd2ae708065bb37291a2ec7350a45fbe0f8c7444977
MD5 8948c0e15e27304a987490362a22c869
BLAKE2b-256 db3e533bded8c423531ac8db274a145859a111975365e62bf6fe57cdd5b5bab2

See more details on using hashes here.

File details

Details for the file opencv_contrib_python_headless-4.3.0.36-cp35-cp35m-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for opencv_contrib_python_headless-4.3.0.36-cp35-cp35m-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 129b48c9933271b29abd6911cafb4f011a7cecfb233992e9e8db9b0cafd159cb
MD5 553eeec74df2fe93696e264d3915285f
BLAKE2b-256 5d55dc3a17ab5d64f4ddebd1e49632b7c6463058ff7fb697e71f14e5261d0902

See more details on using hashes here.

File details

Details for the file opencv_contrib_python_headless-4.3.0.36-cp35-cp35m-manylinux2014_i686.whl.

File metadata

File hashes

Hashes for opencv_contrib_python_headless-4.3.0.36-cp35-cp35m-manylinux2014_i686.whl
Algorithm Hash digest
SHA256 6dc1b8a66465210c56597caa08be9fe3b9d14c570bccfbf25c60c31e4ca10997
MD5 1357785f903aa24bb3b32689e8a158d4
BLAKE2b-256 c3a06deb8820ccc338804fba446401cb1e3163ffe3a0a53ee54b5591ddda1365

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