当试图抓取一个有促销价和普通价的网站时,SelensWebDriver会发现这两个元素。我想:如果找到促销价格,跳过下一次迭代,这将是常规价格。“最终价格”是促销价,“价格价格”是正常价格。
`
remedios= driver.find_elements(By.CLASS_NAME, "price-number")
for element in remedios:
try:
driver.find_elements(By.CLASS_NAME, "price price-final")
preco=(element.text).replace("R$","").replace(",",".")
listaremedio=[{'preco':preco,'farmacia':farmacia}]
listabraba.extend(listaremedio)
except:
try:
driver.find_elements(By.CLASS_NAME, "price price-from")
preco=(element.text).replace("R$","").replace(",",".")
listaremedio=[{'preco':preco,'farmacia':farmacia}]
listabraba.extend(listaremedio)
except:
pass
这就是我使用的代码。它的工作“正确”,它确实得到了促销价,如果它是可用的。但由于“补救”中的下一个元素将是常规价格,它也会得到这一点。我想要一些基本上能做到这一点的东西:如果这个迭代有促销价格,那么跳过下一个迭代。这将使它跳过常规价格,进入下一张卡。谢谢你的关注。任何帮助都将不胜感激。
1条答案
按热度按时间vwhgwdsa1#
我会在这里使用一个内部for循环: