add spider class and fixed some bug