Main concepts
Please read the Terms of Use for Materials on ZennoLab
Table of contents
ProjectMaker (PM)
Development environment for projects (templates).
ZennoPoster (ZP)
Environment for running projects. Allows you to run templates in multithreaded mode, set up a scheduler for running.
Thread (thread of execution)
A separate unit of execution for which a separate browser is allocated, a separate set of data (variables, lists, tables), etc.
You can compare a thread to a person performing a specific set of actions in a browser. Executing in multiple threads is equivalent to performing actions by multiple people.
Action (cube, action)
A block of actions in ProjectMaker from which the template is constructed. Contains typical instructions for managing:
get value
click
save element value
write text to file, list, table, database
and etc.
Action port
Ports are used to connect an action to other actions.
Usually cubes have three ports.
The exception is the Switch action, which can have more than two outgoing ports.
Incoming port
Here you can connect a logic arrow from another action.
Several other actions can be connected to one incoming port at once.
Outgoing ports
Green (for successful exit) and red (unsuccessful exit, exit by mistake)
Branches (arrows) logic
Actions are connected to each other by logic arrows. There are red and green branches.
Green arrow
On this thread, actions are exited when completed successfully:
found and clicked on an element on the site
the expression inside the if action returned true
etc.
Red arrow
The action will exit along this path if an error occurs while the cube is running:
element not found on site page
file to read not found
trying to get a string that is not there from a list\table
and etc.
Template (project)
File created in ProjectMaker and executed in ZennoPoster. Contains instructions for managing the instance. We can say that this is a program or script, according to which the instance works.
The template consists of actions linked by logic arrows.
Instance
This is a separate part of the program that contains a browser instance with its own cookies, cache and proxy that do not overlap with other instances. It looks like a small window with tabs and an address bar.
To make it very simple, an Instance is a separate browser with its own set of data.
Cookies
A small amount of information that is allowed to be left to the web service as a file in a strictly defined place on your hard disk on your computer. It is usually used to recognize you when you switch to this service again.
Cache
These are files (pictures, sounds, videos) that are downloaded and stored on your computer. When you visit the resource again, these files will not be downloaded again, but will be uploaded from the cache to speed up the upload and reduce traffic consumption.
Proxy
With the help of a proxy, you can hide your real IP address and, for example, gain access to a blocked resource. Proxies can be paid and free, but the latter are not distinguished by good speed and survivability.
In ZennoPoster, you can install a proxy using a special action. Also, some services for the sale of proxies are integrated into the program.
Variable
This is an area in the computer's memory where a value is stored. A variable has a name by which you can get its value. The value of the variable can be changed while the template is running.
Snippet
A piece of code (most often in the C # programming language for ZennoPoster) that performs one function.
Bug
An error due to which the project does not work as intended by the developer.
Diagnostics
A special program that collects diagnostic information about the current state of ZennoPoster. Most often required to contact support when a program malfunctions.
Instructions on how to do the Diagnostics correctly - Diagnostics (report) with a detailed log
Proxycheker
Part of the ZennoPoster software package intended for collecting, storing, filtering, sorting and sequentially issuing proxies for anonymous template execution.
Scheduler
Part of ZennoPoster application for delayed launch of templates on a schedule, with a specified frequency, if necessary.