Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/336.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/9/loops/2.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
Python 如果未找到信息,则停止循环_Python_Loops_For Loop_While Loop_Break - Fatal编程技术网

Python 如果未找到信息,则停止循环

Python 如果未找到信息,则停止循环,python,loops,for-loop,while-loop,break,Python,Loops,For Loop,While Loop,Break,我创建了一个网页抓取程序,可以打开几个URL,它会检查哪个URL包含与“明天”日期相关的信息,然后打印该URL上的一些特定信息。我的问题是,有时列表中没有一个URL包含有关“明天”的信息。因此,我希望在这种情况下,程序打印其他信息,如“未找到数据”。我怎样才能做到呢?我还有其他疑问,我是否需要在开始时使用while循环?谢谢 我的代码是: from datetime import datetime, timedelta tomorrow = datetime.now() + timedelta

我创建了一个网页抓取程序,可以打开几个URL,它会检查哪个URL包含与“明天”日期相关的信息,然后打印该URL上的一些特定信息。我的问题是,有时列表中没有一个URL包含有关“明天”的信息。因此,我希望在这种情况下,程序打印其他信息,如“未找到数据”。我怎样才能做到呢?我还有其他疑问,我是否需要在开始时使用while循环?谢谢

我的代码是:

from datetime import datetime, timedelta

tomorrow = datetime.now() + timedelta(days=1)
tomorrow = tomorrow.strftime('%d-%m-%Y')

day = ""

while day != tomorrow:
    for url in list_urls:
        browser.get(url)
        time.sleep(1)
        dia_page = browser.find_element_by_xpath("//*[@id='item2']/b").text
        dia_page = dia_page[-10:]
        day_uns = datetime.strptime(dia_page, "%d-%m-%Y")
        day = day_uns.strftime('%d-%m-%Y')
        if day == tomorrow:
            meals = browser.find_elements_by_xpath("//*[@id='item2']/span")
            meal_reg = browser.find_element_by_xpath("//*[@id='item_frm']/span[1]").text
            sopa2 = (meals[0].text)
            refeicao2 = (meals[1].text)
            sobremesa2 = (meals[2].text)
            print(meal_reg)
            print(sopa2)
            print(refeicao2)
            print(sobremesa2)
            break

无需
while
循环,您可以使用Python构造来实现:

for url in list_urls:
    # do stuff
    if day == tomorrow:
        # do and print stuff
        break
else: # break never encountered
    print("no data found")

无需
while
循环,您可以使用Python构造来实现:

for url in list_urls:
    # do stuff
    if day == tomorrow:
        # do and print stuff
        break
else: # break never encountered
    print("no data found")