프로그래머가 내려놓지 못하는
Python에서 Python에서 자주 사용하는 라이브러리는 무엇인가요? 중독될 정도로 오늘은 자주 사용하는 Python 라이브러리를 정리하겠습니다. 댓글 영역에 관련 라이브러리 내용을 추가하거나 수정하시거나 저에게 메시지를 보내주세요.
먼저 beautifulsoup 라이브러리를 소개합니다. 처음 crawler를 접했을 때 다들 이 라이브러리를 적극 추천하는 모습을 봤거든요. 나중에 사용해봤는데 정말 좋은 것 같아요. 그런데 프로그래머들이 어떻게 도서관에서 죽을 수 있겠어요, 하하.
여러 라이브러리의 설치 과정은 다시 설명하지 않겠습니다. -_-.
다음 예제는 모두 이것을 사용하여 테스트되었습니다.
html = """ <html><head><title>The Dormouse's story</title></head> <body> <p class="myclass" name="dromouse"><b>The Dormouse's story</b></p> <p class="story">Once upon a time there were three little sisters; and their names were <a href="http://example.com/elsie" class="myclass" id="box"><!-- Elsie --></a>, <a href="http://example.com/lacie" class="myclass" id="box1">Lacie</a> and <a href="http://example.com/tillie" class="myclass" id="box2">Tillie</a>; and they lived at the bottom of a well.</p> <p class="story">...</p> """
BeautifulSoup
Beautiful Soup은 Python 표준 라이브러리의 HTML 파서를 지원하며 일부 타사 파서도 지원합니다. 예를 들어 lxml HTML, lxml XML, html5lib. 하지만 이러한 라이브러리를 설치해야 합니다. 그렇지 않으면 Python의 내부 표준 라이브러리를 사용하게 됩니다.
아름다운 수프 개체를 만드는 방법에는 두 가지가 있습니다.
1.Soup=BeautifulSoup(html) #변수 콘텐츠를 사용하여 생성
2.soup=BeautifulSoup('mysite.html') #로컬 파일을 사용하여 생성
BeautifulSoup은 HTML을 복잡한 트리 구조로 변환합니다. 각 노드는 Python 객체인 경우 프런트엔드 기초를 갖춘 학생들은 이것이 DOM 객체와 유사하다는 것을 알게 될 것입니다. BeautifulSoup, Tag, NavigableString, BeautifulSoup 및 Comment에는 대략 4가지 유형의 객체가 있습니다. 일상적인 작업의 대부분은 각 태그에서 정보를 추출하는 것이므로 일반적으로 사용되는 Tag 개체에 대해 간략하게 설명하겠습니다.
Tag
tag는 HTML의 태그입니다.
예를 들어 HTML의 머리글, 제목, a, p 등이 있습니다.
실제 동작에서는 선택기를 통해 필요한 태그를 찾은 후, Tag 객체를 동작시켜 필요한 정보를 얻어내게 됩니다. BeautifulSoup에서 findAll() 및 find()는 문서 트리를 검색하여 필요한 태그를 얻는 데 일반적으로 사용됩니다. 동시에 BeautifulSoup은 검색, select() 메서드에 대한 CSS 구문도 지원하며 반환 유형은 목록입니다.
ps:
1.findAll()은 find_all()
2과 동일합니다. 프론트 엔드를 더 잘 아는 사람들은 select() 메서드를 사용하는 것이 더 편리합니다.
find()
find()는 findAll()의limit=1과 동일하지만 find()는 결과를 반환하고 findAll()은 목록을 반환합니다.
CSS Selector
beautifulsoup은 필수 태그를 찾기 위해 CSS 구문 선택기를 지원합니다.
select(CSS选择器) 例: soup.select('.myclass #box') #后代选择器 soup.select('head>title') #子选择器 soup.select('div+p') #相邻兄弟选择器 soup.select('div~p’) #后续兄弟选择器
속성 검색도 추가할 수 있습니다.
soup.select('.myclass a[id="box"]')
select() 메서드는 목록을 반환합니다.
위 내용은 BeautifulSoup에서 흔히 사용하는 기능들입니다
위 내용은 Python을 더욱 편리하게 만들기 - Python에서 일반적으로 사용되는 표준 라이브러리 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!