Package: screenshots-pagepixels
PagePixels Screenshots for PythonPagePixels is an API and web interface that provides automated screenshot capturing and change notifications for your web pages. With PagePixels, you can easily capture immediate screenshots, schedule recurring screenshots, set up change notifications, and use multi-step screenshotting functionality to complete forms, click links, and login to websites prior to taking screenshots.Getting StartedTo use PagePixels, sign up for a free account and obtain your API key. No payment information is required. You can sign up and create an API key by visiting the PagePixels websitehttps://pagepixels.com.Once you have your API key, you can start making requests to the API.InstallationTo install thescreenshots_pagepixelspackage, you can use the following command:pip install screenshots-pagepixelsOnce the package is installed, you can import it in your Python code:fromscreenshots_pagepixelsimportScreenshotsPagepixelsUsageThescreenshots_pagepixelsPython package provides a simple and intuitive way to interface with the PagePixels API. TheScreenshotsPagepixelsclass provides the following methods.Learn more about configuring your screenshot options here:https://pagepixels.com/app/documentation#api-optionssnap(options = {})Captures a screenshot of a web page immediately.client=ScreenshotsPagepixels('your-api-key')options={'url':'https://www.example.com'}client.snap(options)create_screenshot_config(options = {})Creates a new screenshot configuration, which can include an automatically recurring schedule, multi-step configurations, and more.Learn more about multi-step (click links, complete forms, login to websites, etc) functionality here:https://pagepixels.com/app/documentation#multi-step-screenshotsLearn more about configuring scheduled screenshots here:https://pagepixels.com/app/documentation#scheduled-screenshotsclient=ScreenshotsPagepixels('your-api-key')options={'url':'https://www.example.com','scheduled_screenshot':True,'scheduled_every':1,'scheduled_interval':'days'}client.create_screenshot_config(options)screenshot_configs(options = {})Allows you to retrieve your screenshot configurations.client=ScreenshotsPagepixels('your-api-key')client.screenshot_configs()get_screenshot_config(id)Gets a specific screenshot configuration.client=ScreenshotsPagepixels('your-api-key')client.get_screenshot_config('your-screenshot-config-id')update_screenshot_config(id, options = {})Updates a specific screenshot configuration.client=ScreenshotsPagepixels('your-api-key')options={'scheduled_every':2}client.update_screenshot_config('your-screenshot-config-id',options)delete_screenshot_config(id)Deletes a specific screenshot configuration.client=ScreenshotsPagepixels('your-api-key')client.delete_screenshot_config('your-screenshot-config-id')screenshot_config_screenshots(id, options = {})Retrieves a list of screenshots that were taken with a specific screenshot configuration.client=ScreenshotsPagepixels('your-api-key')client.screenshot_config_screenshots('your-screenshot-config-id')screenshot_config_change_notifications(id, options = {})Provides an array of all Change Notifications for a specific screenshot configuration.Learn more about configuring change notifications for your screenshots here:https://pagepixels.com/app/documentation#screenshot-change-notificationsclient=ScreenshotsPagepixels('your-api-key')client.screenshot_config_change_notifications('your-screenshot-config-id')job_status(job_id)Retrieves the status of a specific screenshot job associated with a screenshot configuration.client=ScreenshotsPagepixels('your-api-key')client.job_status('your-job-id')capture_screenshot(id)Immediately captures a screenshot using a specific screenshot configuration. This bypasses all scheduling to take a screenshot immediately.client=ScreenshotsPagepixels('your-api-key')client.capture_screenshot('your-screenshot-config-id')screenshots(options = {})Retrieves a list of all screenshots taken with your PagePixels account.client=ScreenshotsPagepixels('your-api-key')client.screenshots()change_notifications(options = {})Provides an array of all Change Notifications for all screenshot configurations.client=ScreenshotsPagepixels('your-api-key')client.change_notifications()Some additional helpful information.SchedulingWith PagePixels, you can schedule recurring screenshots of your web pages. You can schedule screenshots through the user interface as well if needed.The following options are available for scheduling:OptionExpected Valuescheduled_screenshottrue or falsescheduled_everyInteger greater than 1scheduled_intervalAny of: minutes, hours, days, weeks, months, yearsMulti-Step ScreenshotsPagePixels also provides the ability to use multi-step functionality to complete forms, navigate to different pages, click links and buttons, and login to your favorite websites prior to taking your screenshot.Learn more about how to configure multi-step actions for your screenshots here:https://pagepixels.com/app/documentation#multi-step-screenshotsThe following actions are available for use with the multi-step functionality:ActionExampleClick{"type": "click", "selector": "#your-selector"}Hover{"type": "hover", "selector": "#your-selector"}Change Notification{"type": "change", "selector": "#your-selector", "send_to": "webhook", "url": "https://example.com/webhook-url"}Goto URL{"type": "redirect", "value": "https://example.com"}Run Javascript{"type": "javascript", "value": "console.log('my javascript');"}Insert CSS{"type": "css", "value": "#selector{ color: red }"}Text Field Input{"type": "text_field", "selector": "#the-text-field", "value": "your-value"}Dropdown Field Selection{"type": "select", "selector": "#the-dropdown-field", "value": "selected value"}Checkbox Field Input{"type": "checkbox", "selector": "#the-checkbox-field", "value": true}Press Enter(to submit hidden forms) {"type": "submit"}Wait X milliseconds{"type": "wait", "value": "5000"}Wait for Selector{"type": "wait_for_selector", "selector": "#your-selector"}To use these actions with the Python client, simply provide them as a list of dictionaries in theoptionsparameter when creating or updating a screenshot configuration. For example:client=ScreenshotsPagepixels('your-api-key')options={"url":"https://www.example.com","multi_step_actions":[{"type":"click","selector":"#your-selector"},{"type":"wait","value":"5000"}]}client.create_screenshot_config(options)