>>5The interpret the bytecode. It is binary yes, but it is not machine code for a conventional machine, but an idealized machine.
There are various types of interpreters. The simplest are syntax directed interpreters. They execute code, when the parser recognizes a piece of syntax. These are relatively slow, I think PHP is such a language.
Then you have the tree walkers. They parse the code into a proper AST. Perhaps optimize it a bit and then walk the AST, while executing code.
Python is a bit more sophisticated. The AST is here translated into bytecode, instructions of an idealized machine.
Java also runs on an idealized machine, but is much more sophisticated.