Skip to main content

A Python module for working seamlessly with JavaScript files.

Project description

EverythingJS

Overview

EverythingJS is a CLI tool for extracting JavaScript links from URLs or web pages, applying custom regex patterns to those JS files, and organizing the results in a structured JSON format. It’s designed for efficiency, with features like multi-threading, filtering irrelevant links, and customizable headers.

Installation

Install EverythingJS via pip:

pip install everythingjs

Features

  • Extracts JavaScript links from a URL or a list of URLs.
  • Converts relative links to absolute URLs.
  • Applies a regex pattern to each JavaScript file, extracting relevant matches.
  • Filters irrelevant JavaScript links using a predefined nopelist.
  • Supports custom headers for HTTP requests.
  • Outputs results in JSON format, tagged to respective JS links.
  • Multi-threaded for fast processing.

Usage

Command-Line Arguments

usage: everythingjs [-h] -i INPUT [-o OUTPUT] [-v] [-H HEADER]

Extract JS links from a URL or list of URLs and apply regex to them.

optional arguments:
  -h, --help            Show this help message and exit.
  -i INPUT, --input INPUT
                        URL or file containing URLs.
  -o OUTPUT, --output OUTPUT
                        Output JSON file to save results (optional, prints to CLI if not specified).
  -v, --verbose         Enable verbose logging.
  -H HEADER, --header HEADER
                        Add custom header (can be used multiple times).

Example Usage

1. Extract JavaScript links from a single URL:

everythingjs -i https://example.com

2. Extract JavaScript links from a file of URLs:

everythingjs -i urls.txt

3. Save the output to a JSON file:

everythingjs -i https://example.com -o results.json

4. Enable verbose logging:

everythingjs -i https://example.com -v

5. Add custom headers:

everythingjs -i https://example.com -H "User-Agent: CustomAgent" -H "Authorization: Bearer TOKEN"

Output

  • Outputs JSON in the format:
{
  "https://example.com": {
    "js_links": [
      "https://example.com/static/script1.js",
      "https://example.com/static/script2.js"
    ],
    "regex_matches": {
      "https://example.com/static/script1.js": ["match1", "match2"],
      "https://example.com/static/script2.js": ["match3"]
    }
  }
}
  • Domains without JavaScript links are excluded from the output.

License

MIT License

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

everythingjs-0.2.1.tar.gz (13.2 kB view details)

Uploaded Source

Built Distribution

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

everythingjs-0.2.1-py3-none-any.whl (12.8 kB view details)

Uploaded Python 3

File details

Details for the file everythingjs-0.2.1.tar.gz.

File metadata

  • Download URL: everythingjs-0.2.1.tar.gz
  • Upload date:
  • Size: 13.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.8

File hashes

Hashes for everythingjs-0.2.1.tar.gz
Algorithm Hash digest
SHA256 ebafe50fb7a34b76211a1448589bdb5880af256ee9060ccaf60b742e50f7cb42
MD5 87c279fafef4ce395b51ab5aa4e14f09
BLAKE2b-256 5643123bc76c8b11b752bb4a293a76357d86783927f28175165228103a23ae97

See more details on using hashes here.

File details

Details for the file everythingjs-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: everythingjs-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 12.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.8

File hashes

Hashes for everythingjs-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 c57ddd69af722557db61d2c0d1ce8b5b8903d02118a0d464114a35d6c0dc2809
MD5 e3020a986db1a7f9c333ab00f7aef84f
BLAKE2b-256 7a71275c0065d143593c547086232288fa8d25041d37c2755ea8819c4213f7df

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