I got a tb shot and now the area is purple with white dots on it that are filled with pus. It's painful and itchy.

Possible infection. I assume that you mean you had a skin test to see if you have tuberculosis. It may be that you have developed an infection at the site of the shot. If so, it needs to be treated with antibiotics. Get it checked by a health care professional.