def av_account_form(self): form = self.get_form('//form[@id="formGoToRivage"]') form['gfr_numeroContrat'] = JSVar(var='numContrat').filter( CleanText('//script[contains(text(), "var numContrat")]')( self.doc)) form['gfr_data'] = JSVar(var='pCryptage').filter( CleanText('//script[contains(text(), "var pCryptage")]')(self.doc)) form[ 'gfr_adrSite'] = 'https://espaceclient.%s.fr' % self.browser.website form.url = 'https://secure-rivage.%s.fr/contratVie.rivage.syntheseContratEparUc.gsi' % self.browser.website form.submit()
def get_post_params(self): return { 'facetSettingId': JSVar(CleanText('//script'), var='_ItemName')(self.doc), 'currentLanguage': JSVar(CleanText('//script'), var='_CurrentLanguage')(self.doc), 'clientId': JSVar(CleanText('//script'), var='_ClientId')(self.doc), 'branchId': JSVar(CleanText('//script'), var='_BranchId')(self.doc), 'clientName': JSVar(CleanText('//script'), var='_ClientName')(self.doc) }
def obj_id(self): _id = Regexp(CleanText('//meta[@property="og:url"]/@content'), '.*\?ID=(.*)', default=None)(self) if _id is None: _id = JSVar(CleanText('//script'), var='_JobDetailsId')(self) return _id
def redirect_li_space(self): form = self.get_form(name='FORM_ERISA') form['token'] = JSVar(CleanText('//script'), var='document.FORM_ERISA.token.value')(self.doc) form.submit()
def obj_shop(self): shop = Shop(Env('_id')(self)) shop.name = Regexp(CleanText('(//div[@xtcz="contacter_le_vendeur"]/div/ul/li)[1]'), 'Nom : (.*)')(self) shop.location = JSVar(CleanText('//script'), var='tooltip')(self) shop.info = CleanText('//div[@xtcz="contacter_le_vendeur"]/div/ul/li[has-class("printPhone")]')(self) return shop
def obj_job_name(self): job_name = Regexp( CleanText('//meta[@property="og:title"]/@content'), '(.*)\|.*', default=None)(self) if job_name is None: job_name = JSVar(CleanText('//script'), var='_JobTitle')(self) return job_name
def obj_url(self): url = CleanText('//meta[@property="og:url"]/@content', default=None)(self) if url is None: url = JSVar(CleanText('//script'), var='_JobUrl')(self) if not url.startswith('http'): url = 'www.adecco.fr%s' % url return url
def on_load(self): self.logger.debug('automatically following form') form = self.get_form(name='FORM_ERISA') form['token'] = JSVar(CleanText('//script'), var='document.FORM_ERISA.token.value')(self.doc) form.submit()
def get_api_key(self): return JSVar(CleanText('//script'), var='apiKey', default=None)(self.doc)
def obj_title(self): title = CleanText('//meta[@property="og:title"]/@content', default=None)(self) if title is None: title = JSVar(CleanText('//script'), var='_JobTitle')(self) return title
def get_js_url(self): # look for frame url in the top page return urljoin(self.url, JSVar(CleanText('//script'), var='url')(self.doc))
def on_load(self): _, app_data = self.get_session_storage() self.SESSION_INFO['app_location'] = JSVar( var='window.location').filter(self.content.decode()) self.SESSION_INFO['app_data'] = app_data self.browser.SESSION_INFO = self.SESSION_INFO
def get_js_url(self): return JSVar(CleanText('//script'), var='url')(self.doc)