Before COVID screwed everything up this year I had done fairly well across the last 3+ years essentially betting full time with an ROI of around 5.5% which was as well as one can hope for with a large enough sample. I've made some money after the leagues restarted but it became hard to model and I just about broke even since July.
A few things:
Top flight European soccer spreads and even goals are unbettable. The bookies have far too sharp of lines, especially since they have access to data you don't (unless you pay a ton of money or know how to access some stuff you aren't supposed to). There are viable markets in things like bookings, corners, in part because they are somewhat incidental - nobody plays to get booked or relies on a lot of corners to win - and somewhat related to referee performance as well. Those are the kind of data you can actually get and do some modeling with but it's still not that great of markets.
COVID also really screwed up the lower leagues in out of the way countries and that's really the biggest shame when it comes to betting on soccer. Advanced metrics haven't really hit the lower youth leagues in countries like Algeria or Tanzania or Iran yet but you can bet on them nonetheless. This gives you a better shot at finding something the bookies missed. U20 internationals in South America, some of the lower league North African matches can be wildly mispriced and that's the sort of opportunity you really need. I had a leg up as I logged 10,000+ hours of Football Manager over just 4 editions and have some familiarity with almost any league that made it into the game at some point (and took Ireland to two World Cups in the same save) but hey, it really teaches you a lot.
MLB, NBA, and NHL are actually still excellent markets but for completely different reasons. MLB's advanced metrics (sabermetrics) is so ridiculously advanced and the data entirely accessible instantaneously direct from the league down to the angle and speed of each pitch and each swing of the bat that there's a lot of stuff that the bookies simply can't keep up with. I'm not sure if it's really bettable if you aren't familiar with advanced metrics and projections at that level, but if you are there are gaping mispricings every day and the season goes for 162 games (when COVID isn't around) and so the dataset is huge and more importantly, bookies have trouble pivoting on quickly enough on real-time changes that you would be abl to notice in game and then test out immediately with data, and they run on a lot of old assumptions and "common wisdom" which doesn't play out in practice. COVID ruined this but for as long as I have data on the lines, spring training games where the "road" team is an AL team that didn't make the playoffs the year prior, just betting on that would leave you up 200 units up since 2007. Those games don't even count, but they count for money. This was in part due to bookies assigning a home team advantage when in spring training there's next to no home field advantage and they forget that after the 7th inning they swap out every player and put in random minor leaguers. There are a few other really obvious and consistently mispriced lines in baseball betting and can make you a fairly tidy sum of money. Remember that you should be betting on value anyway, so you're really betting against how well the bookies are setting the lines, not other actual people or even the teams in a sense (unless you're in a betting exchange situation but those don't exist for Americans). Stuff like weather, umpire, bullpen fatigue, whether a pitcher works well with a catcher or not are all elements that in the aggregate can give you a 1-2% edge if you correctly take into account. I have a 16% ROI from just betting on ML dogs in baseball spring training 2019.
NBA is even better since there's basically 0 point in betting on anything for the whole game. First quarter, first half road dogs, filter by the obviously related params like strength of bench and turnovers, can really be great bets. Last few years the Nets, the Hawks, and the Grizzlies managed to do incredibly well in the 1st half and then consistently blow the second half. 1st half ML bets are a god damn goldmine. Particularly for road dogs, I have a 23% ROI after 239 wagers going 93-139-7, offsetting a fairly bad home ML dog record of -5% ROI. Something similar goes for hockey.
Some countries definitely have rigged games all the time though. Don't bet on Serbian domestic soccer, or the Chinese domestic league, or quite a few others. Stick to leagues where the pay is high enough to make rigging matches a bad deal.
Also, you're in it for the long haul anyway so variance is gonna be a thing no matter what. Don't panic and run your analysis. Individual results matter if you're a supporter, but as a bettor it is just what it is. I try not to bet on or against teams I support though, and leave most of the work to bots when it comes to placing the bets.
But anyway, yeah, it's entirely possible to make money doing this, but you'll need to be a step ahead of the bookie and really understand analytics and data or exploit any knowledge gaps. Unfortunately, unless you treat this as a job (as I did), you won't have time or energy to get all this done on your own, most likely, and insofar as betting systems never work, for sports it's true s well but datamining isn't a betting system, it's just analytics.