woocommerce-rest-api

How to work with the Woocommerce REST API with Python

WordPress is probably the most used CMS in the world (it is estimated that almost 40% of all websites are built using the platform): it is very easy to install and use, and allows even non-developers to create website in few minutes.
Wordpress has a very large plugin ecosystem; one of the most famous is Woocommerce, which allows us to turn a website into an online store in few steps. The plugin makes use of the WordPress REST API infrastructure; in this tutorial we will see how to interact with the Woocommerce API using the Python programming language, showing how to list, create, update and delete products and categories.

In this tutorial you will learn:

  • How to generate Woocommerce REST API credentials and enable pretty permalinks
  • How to interact with the Woocommerce REST API using Python and the woocommerce package
  • How to get information about the existing Woocommerce categories, create, update and delete them
  • How to get information about the existing Woocommerce products
  • How to create simple and a variable products with variations
  • How to update and delete a product

woocommerce-rest-api

Read more

How to Discover, From Inside a Bash Script, the Path the Script Is In

How to Discover, From Inside a Bash Script, the Path the Script Is In

When you develop complex Bash scripts and start putting various scripts into a folder, where one script interacts with another by, for example, starting it, it quickly becomes necessary to ensure we know the path the script was started from, so we can start the other scripts with a fully qualified pathname. This is important because the first script may have been started from outside the script’s directory. We could have also done so by using a relative path, so even – somehow – reading the command that started the current script will not work.

In this tutorial, you will learn:

  • What the pwd command is, and what it does
  • How to discover from inside a Bash script what path that same script is in

Read more

Computer Math Basics: Binary, Decimal, Hexadecimal, Octal

Computer Math Basics: Binary, Decimal, Hexadecimal, Octal

How we express a number depends on whether we are a computer or a human. If we are human, we are likely to express numbers using our familiar 10-base decimal system. If we are a computer, we are likely, at our core, to express numbers as 2-base or binary.

So what is up with all the many ways of expressing numbers, and why do they exists? This article will go into some detail and hopefully by the end you’ll be counting octal on your fingers. Which works fine by the way, as long as you use only 8 fingers, after all… octal is 8-base.

In this tutorial you will learn:

  • How to do simple counting in up non-decimal systems like binary, hexadecimal and octal.
  • What the terms 2-base, 10-base etc. stand for and how to understand them more easily.
  • The connection between these various methods of expressing numbers

Read more

How to install Swift on Ubuntu 20.04

How to install Swift on Ubuntu 20.04

Swift is a modern open source high-performing programming language with a focus on safety. It was developed by Apple and released in 2014. Swift was designed as a replacement for the older Objective-C language. Although, the language was originally proprietary, in 2015 Apple open-sourced the language and made it available for GNU/Linux systems. Although Swift is most well known for being the language used in iOS app development, there is an uptick in using it for server-side programming on Linux. Additionally, the fact that it is a young open source general-purpose programming language may lead to increased use in other domains over time.

Read more

How to install Anaconda scientific computing python distribution on Linux

How to install Anaconda scientific computing python distribution on Linux

Anaconda is a distribution of python and other open source packages that are meant to be used for scientific computing. It is frequently used for data science, predictive analytics, and machine learning. Installing Anaconda is the fastest way to have all of the tools for scientific computing readily available to you. It includes the conda package manager, IPython the interactive python shell, the spyder IDE, along with the Project Jupyter interactive web based computational environments: Jupyter Notebook, and JupyterLab.

Read more

Installing Java JDK via command line on Kali Linux

How to install Java on Kali Linux

The objective of this guide is to show how to install the Java Development Kit (JDK) on Kali Linux. This is needed by Java developers and programmers in order to compile and run Java applications. It’s also required for security tools that are built in Java.

In this tutorial you will learn:

  • How to install Java JDK in Kali Linux

Read more

How to Use Bash Subshells Inside if Statements

How to Use Bash Subshells Inside if Statements

If you have ever used Bash subshells ($(...)), you know how flexible subshells can be. It only takes a few characters to start a subshell to process anything required, inline to another statement. The number of possible use cases is virtually unlimited.

We can also use Bash subshells inside if statements, inline with the statement. Doing so gives the user and developer much additional flexibility when it comes to writing Bash if statements.

If you are not familiar yet (or would like to learn more about) Bash if statements, please see our Bash If Statements: If Elif Else Then Fi article.

In this tutorial you will learn:

  • How to incorporate Bash subshells inside if statements
  • Advanced methods to incorporate Bash subshells inline with other commands
  • Examples demonstrating the use of Bash subshells in if statements

Read more

Bash if Statements: if, elif, else, then, fi

Bash if Statements: if, elif, else, then, fi

If you are just starting to explore the Bash coding language, you will soon find yourself wanting to create conditional statements. Conditional statements, in other words, define ‘if a condition is true or false, then do this or that, and if the opposite is true, do something else’. This is the most basic function of any conditional statement.

This article will introduce you to the five basic if statement clauses. being if, elif, else, then and fi. The first simply opens a if statement, the then introduces the what commands to execute if the statement condition was true section and the else introduces the what commands to execute if the statement condition was false section. Finally, the fi closes the statement. We also have the special elif on which we will see more in a minute. Let’s start with an easy example.

In this tutorial you will learn:

  • How to implement an if statement at the Bash command line
  • How such if statements can also be used inside a Bash scripts
  • Examples showing you the if, elif, else, then and fi clauses in Bash

Read more

How to launch external processes with Python and the subprocess module

How to launch external processes with Python and the subprocess module

In our automation scripts we often need to launch and monitor external programs to accomplish our desired tasks. When working with Python, we can use the subprocess module to perform said operations. This module is part of the programming language standard library. In this tutorial we will take a quick look at it, and we will learn the basics of its usage.

In this tutorial you will learn:

  • How to use the “run” function to spawn an external process
  • How to capture a process standard output and standard error
  • How to check the exist status of a process and raise an exception if it fails
  • How to execute a process into an intermediary shell
  • How to set a timeout for a process
  • How to use the Popen class directly to pipe two processes

Read more

Bash Advanced Variable Idioms for Case Sensitivity Management

Bash Advanced Variable Idioms for Case Sensitivity Management

Whenever we work with textual strings, sooner or later the issue of case comes up. Does a word need to be fully uppercase, fully lowercase, with a capitalized letter at the start of the word or sentence, and so on.

An idiom is a natural language expression of a simple programming task. For example, in the sleep 10 command (which will pause the terminal one is working in for ten seconds), the word sleep is a natural language expression of what is a time based coding construct, developed in the Bash GNU coreutils software package.

There are a number of special variable-bound idioms (i.e. suffixes which can be added to a variable name, indicating what we would like to do with a given variable), which can be used in Bash to more easily do these types of conversions on the fly instead of having to use for example the Sed Stream Editor with a Regular Expression to do the same.

If you are interested in using regular expressions, have a look at our Bash Regexps For Beginners With Examples Advanced Bash Regex With Examples articles!

This makes working with variables that need case modification, or if statement testing a whole lot easier and provides great flexibility. Idioms can be added directly inside the if statements and do not need to employ a subshell with sed.

While the syntax looks slightly complex to start with, once you learn a little mental support trick to remember the right keys, you will be well on your way to use these idioms in your next script or Bash one-liner script at the command line!

In this tutorial you will learn:

  • How to use the ^, ^^, , and ,, Bash variable suffix idioms
  • How to use a regular expression [] range idiom in combination with these
  • How to use the ^ and , idioms directly from within if statements
  • Detailed examples exemplifying the use of ^, ^^, , and ,,

Read more

How to read and create csv files using Python

How to read and create csv files using Python

CSV is the acronym of “Comma Separated Values”. A csv file is a just plain text document used to represent and exchange tabular data. Each row in a csv file represents an “entity”, and each column represents an attribute of it. Columns are usually separated by a comma but other characters can be used as field separator instead of it. In this tutorial we will see how to read and create csv files using Python and specifically the csv module, which is part of the
language standard library.

In this tutorial you will learn:

  • How to read csv rows as a list of strings
  • How to read a csv as a list of dictionaries
  • How to create a csv using Python
  • How to create a csv starting from a list of dictionaries

Read more