I think it also has a lot to do with it being much easier to actually play the sport/game.
When the pros are not playing you can just play yourself. With football/etc playing the game in a proper competitive setup is quite the hassle. In Dota or CS you just get 4 of your friends and press a button and in 2 to 3 minutes you are playing.