Python과 BeautifulSoup을 사용하여 HTML 문서를 구문 분석하는 방법은 다음과 같습니다. HTML 문서를 로드하고 BeautifulSoup 개체를 만듭니다. BeautifulSoup 개체를 사용하여 다음과 같은 태그 요소를 찾고 처리합니다. 특정 태그 찾기: Soup.find(tag_name) 모든 특정 태그 찾기: Soup.find_all(tag_name) 특정 속성을 가진 태그 찾기: Soup.find(tag_name, {'attribute) ': 'value'})는 레이블의 텍스트 내용이나 속성 값을 추출합니다. 특정 정보를 얻으려면 필요에 따라 코드를 조정하십시오.
목표:
Python과 BeautifulSoup 라이브러리를 사용하여 HTML 문서를 구문 분석하는 방법을 알아보세요.
필수 지식:
코드:
from bs4 import BeautifulSoup # 加载 HTML 文档 html_doc = """ <html> <head> <title>HTML 文档</title> </head> <body> <h1>标题</h1> <p>段落</p> </body> </html> """ # 创建 BeautifulSoup 对象 soup = BeautifulSoup(html_doc, 'html.parser') # 获取标题标签 title_tag = soup.find('title') print(title_tag.text) # 输出:HTML 文档 # 获取所有段落标签 paragraph_tags = soup.find_all('p') for paragraph in paragraph_tags: print(paragraph.text) # 输出:段落 # 获取特定属性的值 link_tag = soup.find('link', {'rel': 'stylesheet'}) print(link_tag['href']) # 输出:样式表链接
실용 사례:
BeautifulSoup을 사용하여 특정 정보를 추출하는 것입니다. 웹페이지 비열한. 예를 들어, 다음 코드를 사용하여 Stack Overflow에서 질문과 답변을 추출할 수 있습니다.
import requests from bs4 import BeautifulSoup url = 'https://stackoverflow.com/questions/31207139/using-beautifulsoup-to-extract-specific-attribute' response = requests.get(url) soup = BeautifulSoup(response.text, 'html.parser') questions = soup.find_all('div', {'class': 'question-summary'}) for question in questions: question_title = question.find('a', {'class': 'question-hyperlink'}).text question_body = question.find('div', {'class': 'question-snippet'}).text print(f'问题标题:{question_title}') print(f'问题内容:{question_body}') print('---')
이것은 BeautifulSoup을 사용하여 HTML 문서를 구문 분석하는 많은 예 중 하나일 뿐입니다. 특정 요구 사항에 따라 다양한 정보를 얻기 위해 코드를 조정할 수 있습니다.
위 내용은 HTML 단락은 자동으로 두 개의 공백으로 들여쓰기됩니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!