def iter_job_adverts(self, pattern): trs = self.document.getroot().xpath("//tr[@class='texteCol2TableauClair']") \ + self.document.getroot().xpath("//tr[@class='texteCol2TableauFonce']") for tr in trs: tds = self.parser.select(tr, 'td', method='xpath') a = self.parser.select(tds[2], 'a', 1, method='xpath') advert = BaseJobAdvert(a.attrib['href'].replace('#', '')) advert.title = u'%s' % a.text_content() advert.society_name = u'CCI %s' % tds[3].text advert.place = u'%s' % tds[0].text advert.job_name = u'%s' % tds[1].text if pattern is not None: if pattern in advert.title or pattern in advert.job_name: yield advert else: yield advert