Typical way to get spellbook is to save first and reload many times to get spellbook appears in stupid merchant's inventory. I got frustrated because spellguard, demonica aide, curse, and deadly disc never show up in my game.
I spent an hour looking for spellbooks...corina, kistandulus, blake, mepenz, etc...

Below are my observation that will speed up the book searchs:

1. trade with all dwarf except king and two dwarf inside his room for the book
I got 1 gold charm and two spellbook from them.

2. trade with girl who rent you room in ducal inn, girls in brothel
I got heaven's blessing and freeze.

3. trade with blake and kistand in Ars Magican, Corina and Mepenz in Verdist
Mepenz and blake have lowest chance of getting books...takes alot of reload

4. trade with elf in elven village..especially the father who hate your guts
got one gold charm and one book but the chance is very low.

***Important discovery***

If you sell food stuff like 1 fish to them, they will update inventory instantly if you talk them after the trade. This will save you a min or two min in reloading. I found that reloading time get longer if you reload more than 7 times. It is important that you sell no items that value over 200 gold because they will keep your junk in inventory. If they got your junks, they will not update inventory for a very long time...

Also chance of spellbook improve if the merchants are 100 (admire).

P.S. If you have a better way of finding spellbook, please reply. I appreciate any tips in finding them... I still haven't find spells that I needed...
Most of the spellbooks that I found are crappy and broken spells...who need cage or summon skelly...