class ProfileFiller: def __init__(self, username, password, proxy=None): self.wc = WeiboCrawler() self.wc.login(username, password, proxy) self.is_login = False if self.wc.is_login: self.is_login = True def isLogin(self): return self.is_login def fillProfile(self, kwds): nick = kwds['nick'] self.wc.setNick(nick) domain = kwds['domain'] self.wc.setDomain(domain) description = kwds['description'] self.wc.setDescription(description) tag = kwds['tag'] self.wc.setTag(tag) gender = kwds['gender'] self.wc.setGender(gender) provid, cityid = kwds['location']['provid'], kwds['location']['cityid'] self.wc.setLocation(provid, cityid) schoolid, inyear, department = kwds['school']['id'], kwds['school']['in'], kwds['school']['department'] self.wc.setSchool(schoolid, inyear, department) companyname, inyear, outyear, department = kwds['company']['name'], kwds['company']['in'], kwds['company']['out'], kwds['company']['department'] self.wc.setCompany(companyname, inyear, outyear, department) year, month, day = kwds['birth']['year'], kwds['birth']['month'], kwds['birth']['day']
class StatusUpdater(threading.Thread): def __init__(self, jobs): threading.Thread.__init__(self) self.wc = WeiboCrawler() self.jobs = jobs def run(self): if self.jobs.empty(): return gsid, proxy, content, image_info = self.jobs.get() self.jobs.task_done() self.setGsid(gsid) self.setProxy(proxy) #self.wc.sendBlog(content, image_info) #self.wc.setBirthday("1987", "4", "30") #self.wc.setAvatar("2.gif", "image/gif", "2.gif") time.sleep(2) def setGsid(self, gsid): if gsid is None: return self.wc.setGsid(gsid) self.wc.is_login = True def setProxy(self, proxy): if proxy is None: return self.wc.setProxy(proxy) def login(username, password, proxy=None): self.wc.login(username, password, proxy) def isLogin(self): return self.wc.is_login