There is just too much error in a poll.
~ it is virtually impossible to weight the votes properly when dealing with a small sample size and a nation as big as most are
~ they do not have to say where they polled or how the collected their data, the questions asked to people are usually asked in 3 different ways to ensure accuracy (eg who do you believe would make the best leader of our country, which of the candidates do you align your views with most closely etc) but many people may vote against their views to help with a campaign to NOT get someone elected.
~ accurate opinion polls (those with a margin of error of less than 1%) are too expensive to run and are very rarely carried out - they would need a sampling of 10,000 people to achieve this in the UK (if you are to believe the answers given also) which when translated into a poll in the US is an even bigger sampling
~ many people tell you what you want to hear, or what they think will get you away from their door / off their phone etc the quickest. Pollsters also tend to call at dinner time because that is when people are likely to be home - the worst time to call people.
~ non-response bias: some people will simply refuse to answer the questions or some questions skewing the results. Pollsters collect statistics for the people they want to call. If someone in the 50k-70k household income bracket refuses the call they move to a back up list - that second person may have the same income but 50-70k will get you a different type of person in Boston compared to small town Texas for example.
~ life is not a yes / no answer and it is impossible for a person (the pollster) to know exactly what a person means by a 4 on a 1-10 scale or to put an exact yes no answer to a question posed that a person can answer in words.
~Generally research companies do not do polls just because, they get paid to ask several questions for different political parties or stakeholders or industries and the answers to those other questions skew the results of the others.
There is a whole host of issues