Skip to main content

A set of python scripts for common web tasks

Project description

As of version 0.0.7 This project has been moved and renamed SWS

Details on the continued project can be found here:

https://github.com/Descent098/sws


kuws logo

Kuws; Kieran's Useful Web Scripts

Some useful, and common web actions all packaged together

Quick-start

Installation

From PyPi

run pip install kuws or sudo pip3 install kuws.

From source

  1. Clone the github repo (https://github.com/Descent098/kuws)
  2. cd into the 'kuws' root directory (where setup.py is) and run pip install . or sudo pip3 install .

You can validate it is installed properly by typing kuws into your terminal, the output should look like this:

Kieran's Useful Web Scripts; A set of python web utility scripts.

Usage:
    kuws [-h] [-v]
    kuws redirects <url> [-t]
    kuws youtube <url> [<path>]
    kuws ssl <hostname> [-e] [-c]

Options:
    -h --help               Show this help message and exit
    -v --version            Show program's version number and exit
    -e --expiry             If specified will check the expiry of ssl cert/domain
    -c --cert               If specified will print the full details of the SSL cert
    -t --trace              If specified will show the full trace of the provided url

Documentation

User Documentation can be found at https://kuws.readthedocs.io.

Development-Contribution guide

Installing development dependencies

There are a few dependencies you will need to use this package fully, they are specified in the extras require parameter in setup.py but you can install them manually:

nox   	# Used to run automated processes
pytest 	# Used to run the test code in the tests directory
mkdocs	# Used to create HTML versions of the markdown docs in the docs directory

Just go through and run pip install <name> or sudo pip3 install <name>. These dependencies will help you to automate documentation creation, testing, and build + distribution (through PyPi) automation.

Folder Structure

A Brief explanation of how the project is set up for people trying to get into developing for it

/kuws/command_line_utility.py

The main entrypoint for the kuws command.

/kuws/utilities

Contains all the core logic that is used by the main entrypoint.

/docs

Contains markdown source files to be used with mkdocs to create html/pdf documentation.

**Before you can use this you will need to setup the mkdocs.yml file **

/tests

Contains tests to be run before release

**Before you can use this you will need to create tests, for more details take a look at pytest **

Root Directory

setup.py: Contains all the configuration for installing the package via pip.

LICENSE: This file contains the licensing information about the project.

CHANGELOG.md: Used to create a changelog of features you add, bugs you fix etc. as you release.

mkdocs.yml: Used to specify how to build documentation from the source markdown files.

noxfile.py: Used to configure various automated processes using nox, these include;

  • Building release distributions
  • Releasing distributions on PyPi
  • Running test suite agains a number of python versions (3.5-current)

If anything to do with deployment or releases is failing, this is likely the suspect.

There are 4 main sessions built into the noxfile and they can be run using nox -s <session name> i.e. nox -s test:

  • build: Creates a source distribution, builds the markdown docs to html, and creates a universal wheel distribution for PyPi.
  • release: First runs the build session, then asks you to confirm all the pre-release steps have been completed, then runs twine to upload to PyPi
  • test: Runs the tests specified in /tests using pytest, and runs it on python versions 3.5-3.8 (assuming they are installed)
  • docs: Serves the docs on a local http server so you can validate they have the content you want without having to fully build them.

.gitignore: A preconfigured gitignore file (info on .gitignore files can be found here: https://www.atlassian.com/git/tutorials/saving-changes/gitignore)

Changelog

January 28th 2020

Merged V0.0.6 to master - Added user documentation - Fixed broken commands (all of them) - Updated inline documentation - Added tests (infastructure not actual tests... yet) - Added nox to automate build and distribution processes

October 20th 2019

Merged V0.0.5 to master - Reorganized modules - Reformatted docstrings to numpy docstrings - Refactored primary entrypoint to docopt from argparse

June 23rd 2019

Merged v0.0.4 to master - Added SSL argument to main parser - refactored and updated inline documentation - Added command line entrypoint to allow for direct calling - Removed Youtube command for time being while pytube sorts out issues

April 20th 2019

Merged V0.0.3 to Master Included: - Better Packaging; Fixed Pip install pathing issues

April 18th 2019

Merged V0.0.2 to Master Included: - Better Packaging; can use functions via direct importing i.e. from kuws import trace Merged V0.0.1 To master Included: - Basic URL tracing - Youtube video downloading

January 7th 2019

V0.0.1 initial commit on github

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

kuws-0.0.7.tar.gz (10.7 kB view hashes)

Uploaded Source

Built Distribution

kuws-0.0.7-py2.py3-none-any.whl (10.5 kB view hashes)

Uploaded Python 2 Python 3

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