It is also a place where it kinda sucks to be a tourist.
Why? Because it's full of touts who're looking to scam you the minute they know you're a tourist and heck it doesn't matter if you look Chinese like I do, they somehow know how to spot you even if you don't open your mouth to speak Mandarin in your Malaysian accent.
Maybe it's just the way we dress.
I know what you're thinking
"What's wrong with being invited to a restaurant to eat? You're looking for food anyway right?"
Let me tell you one of a few stories that happened to some friends of mine who visited Shanghai not too long ago. To protect his identity, I'm going to call this friend Frank.
Frank gets stopped by touts a million times while walking down this street (probably because he's Caucasian and you don't look anymore touristy than that) but he knew about their scamming ways so he ignored them. Then suddenly a really pretty Chinese girl came up to him and randomly starting speaking to him in English.

"Oh hai!!!"
So after a while she suggested that they got get lunch so Frank who was hungry himself said okay. She brought him to this Chinese restaurant on the same road. Frank upon sitting down took a look at the prices on the menu for fear that he might be getting conned into an expensive lunch. The prices were pretty normal.
They sat there to eat but throughout the lunch the Chinese girl started ordering a few glasses of wine for herself. One glass after another. By the time the bill came, it came up to be the equivalent of RM3,000.

And most of the bill apparently came from the 'expensive' wine she was having. Frank looked into his wallet and found only RM1,500 worth of Chinese currency so he said he can't afford it. The waiters and the restaurant manager gathered round his table and demanded that he use his credit card but Frank said that his card is not working outside his country.
After making some more noise, Frank finally told them that the only currency he had left was another USD 200 back in the hotel (actually a lie, Frank had much more but knowing he was being scammed he acted broke).
The restaurant owner sent two of his people to follow Frank back to his 5-star hotel just to get the USD200.

I said
"WHAT? What for so expensive?"
And his reply
"Well if you go out and eat and get scammed, it's going to cost you a lot more for crap food so what would you rather do?
We had Italian food for lunch that day.