Frida allows you to **insert JavaScript code** inside functions of a running application. But you can use **python** to **call** the hooks and even to **interact** with the **hooks**.
This is a easy python script that you can use with all the proposed examples in this tutorial:
```python
#hooking.py
import frida, sys
with open(sys.argv[1], 'r') as f:
jscode = f.read()
process = frida.get_usb_device().attach('infosecadventures.fridademo')
script = process.create_script(jscode)
print('[ * ] Running Frida Demo application')
script.load()
sys.stdin.read()
```
Call the script:
```bash
python hooking.py <hookN.js>
```
It is useful to know how to use python with frida, but for this examples you could also call directly Frida using command line frida tools:
If you want to call a non-static function of a class, you **first need a instance** of that class. Then, you can use that instance to call the function.\
In this tutorial you have hooked methods using the name of the mathod and _.implementation_. But if there were **more than one method** with the same name, you will need to **specify the method** that you want to hook **indicating the type of the arguments**.