def parse_results_for_bulk_expired_domains_search(self, element: WebElement) ->[]: #return a list of DomainType if element is not None: products = element.find_elements_by_class_name(BulkCheckElements.get_element_by_class(BulkCheckElements.class_product).target) filtered = [] for product in products: domain = product.find_element_by_class_name(BulkCheckElements.get_element_by_class(BulkCheckElements.class_domain_name).target).text available = GoDaddy.checkAvailability(product.find_element_by_class_name( BulkCheckElements.get_element_by_class(BulkCheckElements.class_msg).target).text) filtered.append(DomainType(domain, available)) return filtered else: return None
def load_for_expired_domains_bulk_check(self, rawData: []) ->[]: """ Bulk check with a list of domains for some type of TLDs, other wise you have to do load_for_expired_domains_check_common() :param rawData: a list of root domains :return: a list of exprired domains, or None if nothing found """ if rawData is not None and len(rawData) > 0: self.driver = WebDriver.get_chrome() nav = Navigator(self.driver) inputBox = nav.checkPage(self.ExpiredBulkDomainCheck, BulkCheckElements.get_element_by_id(BulkCheckElements.id_domains_input_field), 20) checkCount = 0 navChain =[BulkCheckElements.get_element_by_id(BulkCheckElements.id_search_button), BulkCheckElements.get_element_by_id(BulkCheckElements.id_check_out_button), BulkCheckElements.get_element_by_class(BulkCheckElements.class_cart_products)] if inputBox is not None: inputBox.clear() # clear the text area while checkCount < len(rawData): for item in rawData: inputBox.send_keys(item) inputBox.send_keys(Keys.RETURN) checkCount += 1 resultTable = nav.checkClickActionChain(navChain, 60) result = self.parse_results_for_bulk_expired_domains_search(resultTable) self.resultList += result return result else: return None else: return None
def parse_results_for_bulk_expired_domains_search( self, element: WebElement) -> []: #return a list of DomainType if element is not None: products = element.find_elements_by_class_name( BulkCheckElements.get_element_by_class( BulkCheckElements.class_product).target) filtered = [] for product in products: domain = product.find_element_by_class_name( BulkCheckElements.get_element_by_class( BulkCheckElements.class_domain_name).target).text available = GoDaddy.checkAvailability( product.find_element_by_class_name( BulkCheckElements.get_element_by_class( BulkCheckElements.class_msg).target).text) filtered.append(DomainType(domain, available)) return filtered else: return None
def load_for_expired_domains_bulk_check(self, rawData: []) -> []: """ Bulk check with a list of domains for some type of TLDs, other wise you have to do load_for_expired_domains_check_common() :param rawData: a list of root domains :return: a list of exprired domains, or None if nothing found """ if rawData is not None and len(rawData) > 0: self.driver = WebDriver.get_chrome() nav = Navigator(self.driver) inputBox = nav.checkPage( self.ExpiredBulkDomainCheck, BulkCheckElements.get_element_by_id( BulkCheckElements.id_domains_input_field), 20) checkCount = 0 navChain = [ BulkCheckElements.get_element_by_id( BulkCheckElements.id_search_button), BulkCheckElements.get_element_by_id( BulkCheckElements.id_check_out_button), BulkCheckElements.get_element_by_class( BulkCheckElements.class_cart_products) ] if inputBox is not None: inputBox.clear() # clear the text area while checkCount < len(rawData): for item in rawData: inputBox.send_keys(item) inputBox.send_keys(Keys.RETURN) checkCount += 1 resultTable = nav.checkClickActionChain(navChain, 60) result = self.parse_results_for_bulk_expired_domains_search( resultTable) self.resultList += result return result else: return None else: return None