ISPs already have the data because everything you do is logged. If they now want to sell that data, all they need to do is write software to cull out the irrelevant parts, then sell the remaining "good stuff" to whoever wants to buy it. That's oversimplification but not too far off.
Ok.
How easy do you imagine that is? How expensive do you imagine that is. It's easy to say "cull the "irrelevant" stuff". Writing, and bug testing and implementing a program to do that ( after the long process of figuring out exactly what is "irrelevant" ) on varying platforms with varying O.S.'s.
That's just over simplification, and still nowhere near the difficulty those few words covey.
Knowledge might be power but money trumps all in the land of big business.
Folks squeal about this but put everything on front street on facebook who absolutely eeks every dime out of it's users info. It would make far more sense for ISPs to buy from facebook. No R&D, no updating software and a captive audience already being herded.