it wasn't clever, marginal even, although i don't think it was dangerous. he was clearly trying to break the tow, not block Petrov, when petrov made a move he gave him room. probably deserved a warning and nothing more, which is what he got
Weaving four times is better than blocking once. Hamilton didn't block Petrov even once. None of his moves was in reaction to Petrov's. It would have been ridiculous if he got a penalty while Webber always gets away with blocking, sometimes even chopping other people's front wings.