我正试图从ebay中的东西收集名称和价格。例如,我搜索“armani”,而不是我需要使用Selenium收集第一页上的每个项目并将其附加到列表中。但是我的代码中存在问题:
mylist = list()
for a in driver.find_element_by_xpath(".//*[@id='item3aeba8d9f0']/div"):
name = a.findElement(By.xpath(".//*[@id='item3aeba8d9f0']/div/div[2]/h3]")).getText()
price = a.findElement(By.xpath(".//*[@id='item3aeba8d9f0']/div/div[3]/div[2]/div/span[1]/span")).getText()
mylist.append(name, price)
print(name)
结果应该是:[[名称,价格],[名称,价格],......]
答案 0 :(得分:0)
听起来你想要将元组附加到表单列表(名称,价格)。 当您想要遍历一系列Web元素时,您也试图遍历单个Web元素。
mylist = list()
for a in driver.find_elements_by_xpath(".//*[@id='item3aeba8d9f0']/div"): ##Change to .find_elements from .find_element
name = a.findElement(By.xpath(".//*[@id='item3aeba8d9f0']/div/div[2]/h3]")).getText()
price = a.findElement(By.xpath(".//*[@id='item3aeba8d9f0']/div/div[3]/div[2]/div/span[1]/span")).getText()
mylist.append((name, price)) // THE CHANGE IS HERE!!!
##or you instead of tuples you could do a two element list.
mylist.append([name, price]) // THE CHANGE IS HERE!!!
print(name)