add try except
qrcode storing
add rate limit
finish fb, linkedin, google buttons; add renren(not finish)