I am not a linguist, and thus can only give you my perspective as a native speaker.
Yes, they are quite similar. So I would only talk about their subtle differences here.
看起来： More often, 看起来 is used when you make a guess by FEELing but not necessarily really physically seeing.
e.g. Today you did not come to school because of a bad fever.
I may call you and say:"今天怎么没来上学啊？看起来你上病了啊！"
Note here that I did NOT see you at all before I make the guess that you are sick.
看上去： 看上去 is used usually when you express your feeling by really seeing something.
e.g. The moment I see my girlfriend in a beautiful dress. I may go like:"亲爱的，你今天看上去真漂亮！". Note here I can also use 看起来.
You may use 看起来 no matter you really see it or not, but when you see something, I recommend you 看上去. But Please note that it may largely depend on personal preferences.
看上去is only used when referring to appearance and that
看起来can be used when referring to an apparent action or some quality that is more abstract or complex than appearance. I disagree that the usage of
看上去in 你的车看上去没油了 is ok. Though the author did make some mistakes when comparing the two, he did manage to differentiate the two quite succinctly in his last example: "你妹看上去挺漂亮的" vs "你妹看起来挺漂亮的".