Tours: Book Online or Upon Arrival?

Hi! We are traveling to London this October. I'm wondering if I should book tours (e.g. Stonehenge, Windsor, Bath, etc.) online? Or should I wait until I get to London? Will prices be the same?

Is it easy to find offices of tour operators such as Premium Tours, Evan Evans Tours once we get there? Or should I just go ahead and book online in advance?

Thanks!