我正在使用BeautifulSoup解析this网站的代码并提取结果的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¤t_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¤t_result_page=1&results_per_page=20&submitted_search_category=&mode=results")
soup = BeautifulSoup(page.content, 'html.parser')
results = soup.find_all('a')
BeautifulSoup can't find class that exists on webpage?
我找到了类似问题的答案,但就我而言,当我使用print(soup.prettify())
时,可以在控制台中看到要查找的HTML代码
答案 0 :(得分:0)
您面临的问题与解析page.content
的方式有关。
替换:
soup = BeautifulSoup(page.content, 'html.parser')
具有:
soup = BeautifulSoup(page.content, 'lxml')
希望这会有所帮助。