So here's the scoop.
It's impossible to get a Mending book from a loot chest or from fishing in 15w43c. The reason is that it requires a >30 level enchant, and all the LootTables in the world (e.g. dungeon chests, fishing, ...) only enchant with level 30, except for end cities, which enchant from 20-39. But End Cities do not have books among their loot!
So the only way to get a Mending book today is via villager trading. This will just drive everyone away from exploring, since the best loot cannot be found via exploration. This is probably not intended.
I don't know the exact Mending calculations, but some I ran some simulations with custom DeathLootTables to discover that Mending books are about...
0.0% of books enchanted at level 30
0.6% of books enchanted at level 20-39
4.0% of books enchanted at level 40
At the end of the day, it should somehow be possible (but rare) to obtain this book from world exploration. There are a variety of knobs available (loot table level min/max, overall behavior of Mending as treasure enchant, weight-likelihood of books in chests, ...) for devs to tweak this to be the 'right' level. But I'm guessing 'zero' was not the intended level, and that's where we're at now. (Beware the interplay; e.g. level 40 makes Mending 'reasonable' but 'Frost Walker' become vanishingly rare.)
I did an experiment to see what the distribution of enchanted books from dungeon chests was like. It is not good:
1 Projectile Protection
12 Silk Touch
21 Feather Falling
42 Blast Protection
42 Luck of the Sea
45 Fire Aspect
48 Aqua Affinity
60 Frost Walker
68 Depth Strider
98 Fire Protection
129 Bane of Arthropods
Over 1100 books, and no Mending! There's "super rare", and then there's "no one will ever get it".
If you want to test the distribution yourself, here is a command block program to help:
Make a 'The Void' world. Put this loot table
Then make a loop that runs
for a few seconds. Then wait a few seconds for hoppers to suck out all the books into the lower chests. Now analyze all the books.