Я создаю класс, который позволит мне протестировать несколько сайтов, которыми я управляю, однако, когда я использую метод producturls, он не выполняется. Все работает за исключением одного конкретного метода, и я не могу понять, почему. Не уверен, что я делаю неправильно, любая помощь будет признательна.
К вашему сведению, я пытался исследовать, но все еще не могу понять это.
class SearchCheck:
def __init__(self, url):
self.url = url
self.driver = webdriver.Chrome()
@property
def getpage(self):
self.driver.get(self.url)
self.driver.implicitly_wait(10)
@getpage.setter
def getpage(self, url):
self.url = url
self.driver.get(self.url)
self.driver.implicitly_wait(10)
def producturls(self):
search = self.driver.find_element_by_xpath('//*[@id="search-box"]/div[2]/div/div[1]/div/div[1]/input')
time.sleep(5)
search.sendkeys('shoes')
search.sendkeys(Keys.ENTER)
driver.implicitly_wait(60)
# Loop through and get links
for a in self.driver.find_elements_by_xpath('//*[@id="products"]/div[2]/div/div/div/div/div/a'):
yield a.get_attribute('href')
if __name__ == '__main__':
start_page = 'https://www.google.com'
new_urls = RankChecker(start_page)
new_urls.getpage
new_urls.producturls()
Когда код попадает в метод producturls, ничего не происходит, просто хромированные окна остаются открытыми на домашней странице и не выполняют поиск и не возвращают URL-адреса.