Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

PythonPSI

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

PythonPSI

CLI + API for Google PageSpeed Insights

  • 1.9.2
  • PyPI
  • Socket score

Maintainers
1

PyPSI

CLI 🖥 + API for Google PageSpeed Insights

PythonPSI PyPI - Downloads

PyPSI

PageSpeed Insights (PSI) reports on the performance of a page on both mobile and desktop devices, and provides suggestions on how that page may be improved.

PSI provides both lab and field data about a page. Lab data is useful for debugging performance issues, as it is collected in a controlled environment. However, it may not capture real-world bottlenecks. Field data is useful for capturing true, real-world user experience - but has a more limited set of metrics.

PyPSI uses PageSpeed Insights API v5

Installation

pip install PythonPSI

Usage

Google seems to have made it mandatory to use an API key, otherwise you may reach service quota limits too soon. Get one from here.

psi <SITE_URL> <OPTION1> <OPTION2> ...

Example:

$ psi developers.google.com --category seo --stratergy desktop --locale en

    {
    "captchaResult": "CAPTCHA_NOT_NEEDED",
    "kind": "pagespeedonline#result",
    "id": "https://developers.google.com/",
    "loadingExperience": {
        ...
    },
    "originLoadingExperience": {
        ...
    },
    "lighthouseResult": {
        ...
    },
    "analysisUTCTimestamp": {
        ...
    }

CLI

$ psi --help

    Usage: psi [OPTIONS] URL

    Options:
    --api_key TEXT        Required to use the API in an automated way and make
                            multiple requests per second

    --category TEXT       A Lighthouse category to run; if none are given, only
                            Performance category will be run

    --metrics TEXT        Returns metrics of a particular field in response
                            object

    --locale TEXT         The locale used to localize formatted results
    --stratergy TEXT      The analysis stratergy (desktop or mobile) to use, and
                            desktop is the default

    --threshold TEXT      Threshold score to pass the PageSpeed test. Useful for
                            setting a performance budget.

    --links TEXT          If passed adds links with more info about
                            opportunities. Useful for checking documentation about
                            opportunities.

    --utm_campaign TEXT   Campaign name for analytics.
    --utm_source TEXT     Campaign source for analytics.
    --captcha_token TEXT  The captcha token passed when filling out a captcha.
    --help                Show this message and exit.

API Usage

from PythonPSI.api import PSI

PSI('google.com', category='seo', locale='en', stratergy='desktop')
# Returns JSON output
  • PSI - Required arguments: 1, Optional arguments: 9

    • URL:
      • Required
      • Default: None
    • api_key:
      • Optional
      • Default: None
    • category:
      • Optional
      • Default: performance
      • Options: accessibility, best_practices, performance, pwa, seo
    • metrics:
      • Optional
      • Default: None
      • Options: kind, captchaResult, id, loadingExperience, originLoadingExperience, analysisUTCTimestamp, lighthouseResult, version
    • locale:
      • Optional
      • Default: en
    • stratergy:
      • Optional
      • Default: desktop
      • Options: desktop, mobile
    • threshold:
      • Optional
      • Default: None
      • Options: INT 0-100
    • links:
      • Optional
      • Default: false
      • Options: true, false
    • utm_campaign:
      • optional
      • Default: None
    • utm_source:
      • Optional
      • Default: None
    • captcha_token:
      • Optional
      • Default: None

Keywords

FAQs


Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc