Didn't your friend observed that sometimes, these bookmakers are also wrong in their predictions. Bookmakers will always be ahead of a single bettor because they are more than one person who comes together to analyse the game and give odds after coming to a proper conclusion amongst themselves. Can you see where two heads are better than one. Every information about a match to be played is public. Maybe, you friend don't know this.
You are right because sometimes it is seen that many bookmakers make mistakes in their predictions. If the real question here is that if they are making mistakes, then how do they collect information from the leagues? I don't think they can collect information from the leagues. Maybe many people think that they make mistakes so that people don't doubt them, but in fact, that is not the case because if the leagues and bookmakers come under suspicion among people, they will suffer a lot and they will never do such things if they harm them.