Я использую Beautiful Soup для захвата текста из элемента html.Beautiful Soup .get_text() не соответствует строке Python, когда он должен
Я использую цикл и оператор if для сравнения этого текста со списком слов. Если они совпадают, я хочу вернуть подтверждение.
Однако код не подтверждает никаких совпадений, хотя утверждения печати показывают, что на самом деле имеются совпадения.
def findText():
text = ""
url = 'www.site.com'
#Get url and store
page = requests.get(url)
#Get page content
soup = BeautifulSoup(page.content,"html.parser")
els = soup.select(".className")
lists = els[1].select(".className2")
for l in lists:
try:
text=l.find("li").get_text()
except(AttributeError):
text="null"
return text
def isMatch(text):
#Open csv file
listFile = open('list.csv', 'rb')
#prep file to be read
newListFile =csv.reader(listFile)
match = ""
for r in newListFile:
if r[0]==text.lower():
match = True
else:
match = False
return match
congressCSVFile.close()
матч всегда Ложные на выходе
печати (г [0]) возвращает (скажем так) "кошка" в терминале
печати (текст) также возвращает «cat» в терминале
Спасибо, я не могу поверить, что пропустил это. Тем не менее, код все еще не работает/создает совпадение. Также перед написанием этого сообщения я пробовал распечатать подтверждение всякий раз, когда в цикле есть совпадение, но ничего не печатается. Но спасибо, что указал на эту проблему. – auto
На самом деле оказалось, что было два вопроса. Это было одно, а другое - другое. Нужно было понизить() r [0]. – auto