Всем привет!
Мне нужно спарсить один сайт, пытаюсь для этого применить библиотеку BeautifulSoup4 на python.
Более-менее с ней понятно, но не могу заставить работать поиск по тексту супа, т.е. запуск функций find или find_all(text='искомый_текст')
.
Вот пример моего кода - например, нужно на странице nic.ru найти все элементы, в которых содержится слово «сервер», и вывести их на консоль
import requests
from bs4 import BeautifulSoup
def get_content():
url = 'https://www.nic.ru'
header = {
"accept": "application/json, text/plain, */*",
"user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/108.0.0.0 Safari/537.36"
}
resp = requests.get(url, headers=header)
if resp.status_code == 200:
page = BeautifulSoup(resp.text, 'lxml')
pattern = 'сервер'
elements1 = page.find_all(text=pattern)
print(elements1)
Данный код на выходе печатает пустое множество [ ], хотя на этой странице слово «сервер» встречается несколько раз.
Как это победить?