'If there is no answer I want it to pass Python

If there is no answer I want it to pass. I don't want it to write in an excel table. If there is no answer, I want you to move on to the next question.

I'm sorry I don't know much English. If there is an answer, do not write anything in the excel table. skip to the next question

from encodings import utf_8
import people_also_ask as paa
from fake_useragent import UserAgent
ua = UserAgent()
while True:

    input("Please make sure the queries are in \\query.txt file.\npress Enter to continue...")
    try:
        query_file = open("query.txt","r")
        queries = query_file.readlines()
        query_file.close()
        break
    except:
        print("Error with the query.txt file...")


for query in queries:

    res_file = open("result.csv","a",encoding="utf_8")

    try:
        query = query.replace("\n","")
    except:
        pass

    print(f'Searching for "{query}"')
    
    questions = paa.get_related_questions(query, 14)
    questions.insert(0,query)

    print("\n________________________\n")
    main_q = True
    for i in questions:

        i = i.split('?')[0]
        
        try:
            answer = str(paa.get_answer(i)['response'])
            if answer[-1].isdigit():
                answer = answer[:-11]
            print(f"Question:{i}?")
        except Exception as e:
            print(e)

        print(f"Answer:{answer}")


        if main_q:
            a = ""
            b = ""
            main_q = False
            
        else:
            a = "<h2>"
            b = "</h2>"

        res_file.writelines(str(f'{a}{i}?{b},"<p>{answer}</p>",'))

        print("______________________")

    print("______________________")
    res_file.writelines("\n")

    res_file.close()

print("\nSearch Complete.")
input("Press any key to Exit!")


Solution 1:[1]

If you want to detect that the input is blank, then just add a condition in your code.

inputvar = input("Enter string: ")

if inputvar == "":
      print("Blank input entered!")
else:
    print(inputvar)

But just whatever you do, do not enter a .replace("", "None") code in your project because this can cause a serious error: Even if you enter an answer the input variable, it will enter None after each letter/symbol you enter!

Code:

from encodings import utf_8
import people_also_ask as paa
from fake_useragent import UserAgent

ua = UserAgent()
while True:

    input("Please make sure the queries are in \\query.txt file.\npress Enter to continue...")
    try:
        query_file = open("query.txt", "r")
        queries = query_file.readlines()
        query_file.close()
        break
    except:
        print("Error with the query.txt file...")

for query in queries:

    res_file = open("result.csv", "a", encoding="utf_8")

    try:
        if query == "":
            query = query.replace("\n", "")
        else:
            pass
    except:
        pass

    print(f'Searching for "{query}"')

    questions = paa.get_related_questions(query, 14)
    questions.insert(0, query)

    print("\n________________________\n")
    main_q = True
    for i in questions:

        i = i.split('?')[0]
        answer = str(paa.get_answer(i)['response'])
        try:
            if answer[-1].isdigit():
                answer = answer[:-11]
            print(f"Question:{i}?")
        except Exception as e:
            print(e)

        print(f"Answer:{answer}")

        if main_q:
            a = ""
            b = ""
            main_q = False

        else:
            a = "<h2>"
            b = "</h2>"

        res_file.writelines(str(f'{a}{i}?{b},"<p>{answer}</p>",'))

        print("______________________")

    print("______________________")
    res_file.writelines("\n")

    res_file.close()

print("\nSearch Complete.")
input("Press any key to Exit!")

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1