QR codes provide built-in error correction so will stand up to serious wear-and-tear, partially obscured images, etc. - and it won't confuse O with 0 and i with l
You are raising all the right points. QR code standards come from an era when cheap digital cameras sensors were MUCH less good than they are now, and similarly when OCR/image-recognition resources were much less cheaply available or built-in to mobile devices.
Also the longer a url is out in physical space the more danger of it being replaced online, longevity may not be desirable.