Поиск класса BeautifulSoup, без результатов - PullRequest
0 голосов
/ 21 марта 2019

Я использую BeautifulSoup для анализа кода этого сайта и извлечения URL результатов. Но при использовании команды find_all я получаю пустой список в качестве вывода. Я проверил вручную HTML-код, который я загружаю с сайта, и он содержит соответствующий класс. Если бы кто-то мог указать, где я совершил ошибку или показать лучшее решение, я был бы признателен!

from bs4 import BeautifulSoup
import requests


page = requests.get("https://www.awf.edu.pl/pracownik/wyszukiwarka-pracownikow?result_5251_result_page=3&queries_search_query=&category_kategorie=wydzia_wychowania_fizycznego&search_page_5251_submit_button=Szukaj&current_result_page=1&results_per_page=20&submitted_search_category=&mode=results")

soup = BeautifulSoup(page.content, 'html.parser')

results = soup.find_all('div', class_ = 'search-item photo')

`

Я также пытался использовать этот код ниже, чтобы просто найти все ссылки на сайте, а затем отделить то, что мне нужно, но в этом случае я получаю только родительский тег. если в теге 'a' вложен другой тег 'a', он пропускается, и из документации я подумал, что он также будет включен в вывод.

from bs4 import BeautifulSoup
import requests


page = requests.get("https://www.awf.edu.pl/pracownik/wyszukiwarka-pracownikow?result_5251_result_page=3&queries_search_query=&category_kategorie=wydzia_wychowania_fizycznego&search_page_5251_submit_button=Szukaj&current_result_page=1&results_per_page=20&submitted_search_category=&mode=results")

soup = BeautifulSoup(page.content, 'html.parser')

results = soup.find_all('a')

BeautifulSoup не может найти класс, который существует на веб-странице?

Я нашел этот ответ на похожий вопрос, но в моем случае я вижу HTML-код, который хочу найти в моей консоли, когда использую print(soup.prettify())

1 Ответ

0 голосов
/ 21 марта 2019

проблема, с которой вы сталкиваетесь, связана с тем, как вы анализируете page.content.

замените:

soup = BeautifulSoup(page.content, 'html.parser')

на:

soup = BeautifulSoup(page.content, 'lxml')

надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...