Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/293.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Selenium python重复打印店铺名称_Python_Selenium_Beautifulsoup_Python Requests_Webdriver - Fatal编程技术网

使用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
    

当出现错误时,变量会重复旧值。从逻辑上讲,它是按你的要求做的。它很有效,谢谢