In DK2, the creatures you attract depend on what type of features your dungeon has.
In your example, if you don't want any more warlocks, then you should stop building libraries as each additional book case/shelf/podium = 1 additional warlock.
In my experience, most of the time the dungeons will try to fulfill the highest level attraction first, for example, it will spawn a bile demon or black knight if you have fulfilled the requirements (bile demons require a 5x5 hatchery and black knight requires combat pits. Otherwise it'll spawn a goblin since you have extra lairs available but has not fulfilled any other requirements.
Once you have access to the temple, it helps to build one near the portal as you can just pick them up and drop them into the temple for a quick sacrifice.
Also, it helps if you keep a tight control over your lairs, if you don't want anything to come through for a while, just make sure you don't have any free lairs available. Then build a few and see what comes through so you are ready with the sacrifice.