finished_name_els = WebDriverWait(driver, timeout=10).until(lambda x: x.find_elements(By.XPATH, '//div[@class="src-newform-pc-components-SolitaireSeat-index__seatItem src-newform-pc-components-SolitaireSeat-index__used"]')) for el in unfinished_name_els: title_text = el.get_attribute('title') uname = re.search(r'[\u4e00-\u9fa5]+', title_text).group() uid = re.search(r'[0-9]+', title_text).group() self.unfinished_dict.setdefault(uid, uname)
for el in finished_name_els: title_text = el.get_attribute('title') uname = re.search(r'[\u4e00-\u9fa5]+', title_text).group() uid = re.search(r'[0-9]+', title_text).group() self.finished_dict.setdefault(uid, uname)
for k, v in self.unfinished_dict.items(): self.total_dict.setdefault(k, v)
for k, v in self.finished_dict.items(): self.total_dict.setdefault(k, v)
self.unfinished_names = [re.search(r'[\u4e00-\u9fa5]+', y).group() for y in [x.get_attribute('title') for x in unfinished_name_els]] self.finished_names = [re.search(r'[\u4e00-\u9fa5]+', y).group() for y in [x.get_attribute('title') for x in finished_name_els]] self.total_names = list(set(self.unfinished_names).union(set(self.finished_names)))
except Exception as e: pass finally: self.signals.finished.emit()