Handbook
PyFLP can be used for automation purposes e.g. finding/setting project titles, artists names, genre etc. and also by people who are interested more about the FLP format. You can even repair a broken FLP, ofcourse by yourself.
Initialisation
from pyflp import Parser
project = Parser(verbose=True).parse("/path/to/efelpee.flp")
Saving
project.save(save_path="/path/to/save.flp")
Get some channel information
for channel in project.channels:
print(channel.name) # Channel name
print(channel.kind) # Sampler, Audio, Instrument, Layer, ...
# The location of a sample used in a sampler or plain audio
print(channel.sample_path)
There's a lot more information you can get (almost every type of information stored about a channel).
For more information
See Channel.
What about patterns?
for pattern in project.patterns:
print(pattern.name)
print(len(pattern.notes)) # The total amount of notes a pattern holds
You can even get information about a particular note
...
for note in pattern.notes:
print(note.key)
For more information
See Pattern and PatternNote
Docstrings
Almost all properties have a meaningful docstring, and many classes have a direct link to the FL Studio manual page to point out what they implement.
Note
There is much more, check the Reference
Export it as a ZIP looped package
project.create_zip(path="/path/to/flp.zip")