使用Selenium python重复打印店铺名称
当它打印所有的细节,但问题是打印主果汁重复如下是突出显示在图片,这是我的链接,从我刮使用Selenium python重复打印店铺名称,python,selenium,beautifulsoup,python-requests,webdriver,Python,Selenium,Beautifulsoup,Python Requests,Webdriver,当它打印所有的细节,但问题是打印主果汁重复如下是突出显示在图片,这是我的链接,从我刮 from selenium import webdriver driver = webdriver.Chrome('F:/chromedriver') driver.get("https://www.foodpanda.pk/restaurants/new?lat=24.9414896&lng=67.1676002&vertical=restaurants") # res
from selenium import webdriver
driver = webdriver.Chrome('F:/chromedriver')
driver.get("https://www.foodpanda.pk/restaurants/new?lat=24.9414896&lng=67.1676002&vertical=restaurants")
# response = scrapy.Selector(text=driver.page_source)
list = driver.find_elements_by_css_selector("ul.vendor-list li")
length = len(driver.find_elements_by_css_selector("ul.vendor-list li"))
for i in range(length):
try:
name = driver.find_elements_by_css_selector(".headline .name")[i].text
time = driver.find_elements_by_css_selector(".badge-info")[i].text.strip()
rating = driver.find_elements_by_css_selector(".rating")[i].text
dealtag = driver.find_elements_by_css_selector(".multi-tag")[i].text
except:
pass
print(name,time,rating,dealtag)
这是因为它每次都会打印,即使出现错误,也会打印以前存储在您的姓名、时间等变量中的内容。在
Try:
块中移动打印语句时,请尝试使用它
from selenium import webdriver
driver = webdriver.Chrome('F:/chromedriver')
driver.get("https://www.foodpanda.pk/restaurants/new?lat=24.9414896&lng=67.1676002&vertical=restaurants")
# response = scrapy.Selector(text=driver.page_source)
list = driver.find_elements_by_css_selector("ul.vendor-list li")
length = len(driver.find_elements_by_css_selector("ul.vendor-list li"))
for i in range(length):
try:
name = driver.find_elements_by_css_selector(".headline .name")[i].text
time = driver.find_elements_by_css_selector(".badge-info")[i].text.strip()
rating = driver.find_elements_by_css_selector(".rating")[i].text
dealtag = driver.find_elements_by_css_selector(".multi-tag")[i].text
print(name,time,rating,dealtag)
except:
pass
当出现错误时,变量会重复旧值。从逻辑上讲,它是按你的要求做的。它很有效,谢谢