Selenium在Amazon si上找不到定位器

2024-09-30 08:30:05 发布

您现在位置:Python中文网/ 问答频道 /正文

使用selenium+python查找元素时遇到问题亚马逊网站. 正在尝试按id单击“搜索”按钮,或获取显示的搜索结果数。 只能单击搜索一次,下一次尝试我得到'NoneType'对象没有属性'click'。 基本场景-打开amazon,在搜索字段中键入值,然后单击“下一步搜索”按钮获取显示结果的数量。你知道吗

我试着使用Xpath,按元素层次结构向上,只是为了确保我能找到任何东西。什么都不管用,似乎页面是看不见的。你知道吗

def click_search_button(self):
    self.find_element(*AmazonLocators.SEARCH_BTN).click()

def find_num_of_results(self):
    raw_num = self.find_element(*AmazonLocators.NUMBER_OF_RESULTS).text

class AmazonLocators(object):
    SEARCH_BTN = (By.CLASS_NAME, 'nav-input')
    NUMBER_OF_RESULTS = (By.ID, 's-result-count')

Tags: ofself元素numbersearchbydefelement
1条回答
网友
1楼 · 发布于 2024-09-30 08:30:05

有时单击后,元素将对Dom隐藏。尝试使用JavaScript执行器:

    WebElement element = driver.findElementbyxpath("//[@id="js_usercenter_left"]/dl/dd[2]/a");

   JavascriptExecutor executor = (JavascriptExecutor)driver;

   executor.executeScript("arguments[0].click();", element);

相关问题 更多 >

    热门问题