Skip to main content

Python wrapper for PhantomJS

Project description

Build Status

PhantomJS wrapper in Python

Pre requisites

  1. phantomjs: phantomjs command line tool.
  2. Python 3

Install

pip install phantomjs

Usage

Using with a custom phantomjs script:

from phantomjs import Phantom

phantom = Phantom()

conf = {
    'url': 'http://example.com/',   # Mandatory field
}
output = phantom.download_page(conf, js_path='/my/phantomjs/script/path')

In your phantomjs script, you can take the url as:

var system = require('system');
var json = JSON.parse(system.args[1]);
var url = json.url;

Using the default phantomjs script provided with this package:

from phantomjs import Phantom

phantom = Phantom()

conf = {
    'url': 'http://example.com/',   # Mandatory field
    'output_type': 'html',          # json for json
    'min_wait': 1000,               # 1 second
    'max_wait': 30000,              # 30 seconds
    'selector': '',                 # CSS selector if there's any
    'resource_timeout': 3000,       # 3 seconds
    'headers': {
        "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/76.0.3809.72 Safari/537.36",
        "Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3",
        "Sec-Fetch-Mode": "navigate",
        'Sec-Fetch-Site': 'same-origin',
        'Upgrade-Insecure-Requests': '1',
    },
    'cookies': [
        {'name': '_Country', 'value': 'US', 'domain': '.google.com',},
        {'name': '_Currency', 'value': 'USD', 'domain': '.google.com',},
    ],
    'functions': [
        'function(){window.location.replace("http://icanhazip.com/");}',
    ],
}


output = phantom.download_page(conf)

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

phantomjs-1.4.1.tar.gz (7.2 kB view details)

Uploaded Source

Built Distribution

phantomjs-1.4.1-py3-none-any.whl (9.8 kB view details)

Uploaded Python 3

File details

Details for the file phantomjs-1.4.1.tar.gz.

File metadata

  • Download URL: phantomjs-1.4.1.tar.gz
  • Upload date:
  • Size: 7.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/54.2.0 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.9.2

File hashes

Hashes for phantomjs-1.4.1.tar.gz
Algorithm Hash digest
SHA256 4cf6a8954924e7a81c274d0473456c65642d70b46dd308483205f9a11832abb5
MD5 f67a50a2f1180ef4bcc18a4ffed7c0ce
BLAKE2b-256 7e240177951cade2762531d6c16e8323e600e51f4eaf5e1057b03cae59f08b5a

See more details on using hashes here.

File details

Details for the file phantomjs-1.4.1-py3-none-any.whl.

File metadata

  • Download URL: phantomjs-1.4.1-py3-none-any.whl
  • Upload date:
  • Size: 9.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/54.2.0 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.9.2

File hashes

Hashes for phantomjs-1.4.1-py3-none-any.whl
Algorithm Hash digest
SHA256 90f76be949d222c5f2e018b2e0a48c2fa6b0f85f596884432232c203ba422470
MD5 ff29b49657971e5da8b2c445f263ade3
BLAKE2b-256 df4c20e33557f357ef668a6528dc214e6d4528b69c946248bc40dba3e7fb6815

See more details on using hashes here.

Supported by

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