Just so people can be certain and not get their feelings hurt please understand that I am not making fun of Thai people or the English mistakes that are sometimes made. I have lived here nearly a year and have very little in the way of Thai language skills so I am not judging or trying to say that anyone is stupid. That doesn't mean that it can't be funny though.
It is quite obvious that they mean "crab" and not crap, but that doesn't change the humor, especially on a big sign in the street. Also the accidental humor probably helps get customers that this business might not be able to acquire otherwise because spaghetti, even with crab, isn't terribly rare in this country (or any other country that i've been to.)
Crap is one that you can count on having in a menu in nearly any city in Thailand and what makes it even more humorous to me is the fact that the Thai word for crab is actually "poo" so it does seem appropriate that we get some crap involved as well.
It could be intentional at this point because spellchecker does exist here. It wouldn't surprise me a bit if some of the business owners are doing it on purpose for the free publicity. A sign like this kind of instagrams itself.