Sociedad forsøgte at gentage sidste sæsons udesejr over Barcelona og fik en opmuntrende start på Estadi Olimpic Lluis Companys, hvor Sheraldo Becker var tæt på ved et par lejligheder.
Den tidligere Union Berlin-angriber sendte et tidligt forsøg på overliggeren, før han sendte bolden i mål i det 22. minut, men måtte se sin fejring blive afbrudt af assistentens løftede flag for offside.
Efter at have brugt tid på at komme ind i kampen, gav værterne Real en klar advarsel, da Raphinha sendte sit hårde venstrebensskud på stolpen.
Opmuntret af det forsøg skar Barcelona sig lige efter hurtigt igennem et af ligaens stærkeste forsvar og bragte sig foran i slutfasen af første halvleg.
Robert Lewandowskis dybe stikning fandt Ilkay Gündogan, som lagde bolden til rette for Lamine Yamal, der sendte den ind i det nederste hjørne.
Raphinha lod sig ikke afskrække af sit skud på træværket i første halvleg, tværtimod, og forsøgte sig med to langskud i de første 20 minutter af anden periode.
Brasilianeren sendte et hårdt skud på overliggeren, før han ramte målet med et dykkende skud, der tvang Alex Remiro ud i en fantastisk redning.
Brais Mendez var tæt på at kunne udligne, da han flot skabte plads til at sende bolden mod det lange hjørne, men hans skud gik lige forbi Marc-Andre ter Stegens stolpe.
Da kampen gik ind i de sidste 15 minutter, leverede Remiro en fantastisk redning på Ferran Torres' lave skud og holdt dermed sit hold inde i den spændende kamp.
Desværre for gæsternes målmand kunne han ikke forhindre Raphinha i at score på et straffespark i overtiden efter en hånd på bolden, så Blaugrana kunne sikre sig de sidste point.
Mens værterne fejrer tre dyrebare point og et femte clean sheet i syv hjemmekampe, må Sociedad reflektere over et nederlag, der efterlader dem på syvendepladsen - et point efter Real Betis.
Se kampensstatistik her.