Liverpool had Mohamed Salah to thank once again as his late equaliser saw them rescue a point against a spirited Fulham side in an enthralling 2-2 draw on Saturday.
Aleksandar Mitrovic's first-half header was cancelled out by Darwin Nunez after the break, and Liverpool had to come from behind once again after the Serb fired home a penalty which was no less than Fulham had deserved.
Salah and Nunez combined for the scrappiest of equalisers ten minutes from time to salvage a point from an otherwise uninspiring performance from Jurgen Klopp's side.
Fulham began the game with the confidence they played with last season, with Mitrovic seeing a half-chance early on. It was a very slow start from Liverpool, although Klopp's men did have the ball in the back of the net 15 minutes in through Luis Diaz, whose nice finish was correctly ruled out for offside.
The Reds slowly started to find their feet and started to ramp up the pressure midway through the first 45, but Fulham navigated it well and regained the front foot with some outstanding pressing and energy in midfield.
Deservedly, the hosts took the lead 32 minutes in. Kenny Tete's cross floated over to the far post and was met by Mitrovic, who rose highest to head past Alisson and into the back of the net.
Diaz wasn't far off responding shortly after as he struck the post from a tight angle, and although they ended the first half on top, Liverpool could have no complaints about the scoreline.
The second half began with a hamstring injury for Thiago, an early introduction for summer signing Nunez and more of the same from Fulham, who looked like they had an extra player on the pitch at times.
Neeskens Kebano thundered against the post after Nunez was caught napping, before Bobby De Cordova-Reid stung the gloves of Alisson.
Nunez then saw a (potentially offside) flick well saved by Marek Rodak, but just a few minutes later, the Liverpool man came out on top as the same flick found its way into the back of the net thanks to a fortunate ricochet involving Tosin Adarabioyo.
Tim Ream was then needed to clear off the line to deny Nunez an immediate second, with the substitute growing into the game with each passing minute.
However, just as Liverpool looked to be gaining control, they were awarded a penalty after a clumsy foul from Virgil van Dijk on Mitrovic, who stepped up to crash home from the spot and restore Fulham's lead.
Former Fulham starlet Fabio Carvalho wasn't far off an equaliser as he sent a volley narrowly over the crossbar, but Salah did the job with ten minutes to go. Some turmoil in the box saw Salah and Nunez stumble their way into an open goal and the Egyptian couldn't miss.
Liverpool pushed for an equaliser and thought they'd found it as Jordan Henderson's long drive crashed against the bar, but Fulham held on to earn a point which was the least they deserved.
Fulham vs Liverpool player ratings
1. Fulham (4-2-3-1)
GK: Marek Rodak - 7/10 - Comfortable with his hands and made an excellent long pass up to Pereira to relieve some pressure. Really composed.
RB: Kenny Tete - 7/10 - A lovely cross for Mitrovic's opener. Not always comfortable up against Diaz but did enough to upset the winger.
CB: Tosin Adarabioyo - 7/10 - His go-go-gadget-legs were absolutely everywhere. The sort of performance Van Dijk would be happy with.
CB: Tim Ream - 8/10 - Got into some excellent positions to help double up on Salah. Marshalled his defence with real class.
LB: Antonee Robinson - 8/10 - Clung to Salah like his life depended on it and got some superb results.
DM: Harrison Reed - 7/10 - Buzzed around with brilliant energy that was too much for Liverpool's midfield to handle.
DM: Joao Palhinha - 8/10 - Battled for everything from the first whistle. Dominated in midfield and looks like he could be a stunning signing.
RM: Neeskens Kebano - 7/10 - Happy to drop back to help Tete, even if his defending wasn't always up to scratch. Smart and disciplined.
AM: Andreas Pereira - 7/10 - Excellent from set pieces and impressed with his movement.
LM: Bobby De Cordova-Reid - 7/10 - Got into a lot of nice positions down the left. End product wasn't always there but he can still be very happy with his performance.
ST: Aleksandar Mitrovic - 9/10 - Led the line with quality. Gave Liverpool's back line plenty of problems.
SUB: Manor Solomon (66' for Kebano) - 6/10 - Came on at a tricky time and didn't get the chance to strut his stuff. Did nothing wrong.
SUB: Tom Cairney (89' for Pereira) - N/A
SUB: Shane Duffy (94' for De Cordova-Reid) - N/A
Manager: Marco Silva - 9/10 - Approached this game perfectly. Perhaps should have introduced some more energy off the bench but had the tricky job of avoiding disrupting Fulham's good work.
2. Liverpool (4-3-3)
GK: Alisson - 5/10 - Perhaps should have done better with Mitrovic's header. Didn't look sharp.
RB: Trent Alexander-Arnold - 5/10 - Had no space to influence the game in attack and was clearly targeted at the back. Flattened by Mitrovic for the opener. A nice pass for Salah's late equaliser.
CB: Joel Matip - 5/10 - Had a rough time against Mitrovic, whose physicality was too much.
CB: Virgil van Dijk - 5/10 - Positioning wasn't as good as you'd expect. Really clumsy for the penalty.
LB: Andy Robertson - 5/10 - Played a little too casual at times. Didn't enjoy Fulham's energy.
DM: Fabinho - 4/10 - Looked tired. Fulham's pressure and commitment was far too much for him.
CM: Jordan Henderson - 5/10 - Another of those who couldn't match the speed of the game. Offered very little at either end of the pitch apart from a late thunderbolt which struck the bar.
CM: Thiago - 5/10 - Struggled as he wasn't given time to pick out a pass. Looked uncomfortable and limped off with a muscle injury just minutes into the second half.
RW: Mohamed Salah - 6/10 - Couldn't escape Robinson and Ream for the majority of the game but when he did find some space, managed to make an impact with some smart crossing for Nunez. Knew nothing about the goal.
ST: Roberto Firmino - 3/10 - You'd be forgiven for forgetting he was even playing.
LW: Luis Diaz - 6/10 - Diaz was Liverpool's only hope in the first half. Did his best to drag his side towards something.
SUB: Harvey Elliott (51' for Thiago) - 6/10 - Gave a nice boost to things straight after coming on but didn't make too much of an impact.
SUB: Darwin Nunez (51' for Firmino) - 7/10 - A slow start but eventually settled and changed the game. Got into so many nice positions.
SUB: James Milner (59' for Fabinho) - 6/10 - His energy was a big part of Liverpool's attempt to get back into the game.
SUB: Fabio Carvalho (78' for Diaz) - 6/10 - Had a few nice moments.
Manager: Jurgen Klopp - 6/10 - Something wasn't right in the first half but Klopp's introductions of Milner and Nunez were smart.