beautifulsoup으로는 만족못해서 만들어보는 Python3.9 버전의 HTML 파싱기
~를 구현해보는 개인 프로젝트입니다.
javascript에서 제공하는 document.querySelector()
메소드를 파이썬 상에서 구현하는 것이 목표이며,
그 외에도 간단한 Document Object Model(DOM)을 생성하고 수정이 가능한 parser를 구현하는 것 입니다.
본 프로젝트를 수행하며 개인적으로 성취하고자 하는 것에는 다음과 같은 것들이 있습니다.
Google의 python style guide를 통해 가독성이 좋고 정형화된 naming convention 사용하기.
꼼꼼한 doc-string 작성으로 타인이 사용하기 편한 형태의 API 작성에 익숙해지기.
unittest를 직접 작성해보고 모듈단위의 테스팅에 익숙해지기.
GitHub를 능숙하게 사용하기.
GitFlow를 통해 git graph를 깔끔하게 유지하고, 향후 bug tracking 혹은 프로젝트 개발 역사 정리가 수월하도록 하기.
Pull Request 방법에 익숙해지기.
Issue/PR 를 생성하며 현재 작업 중인 내용을 일관성있게 유지·관리하기
본 프로젝트의 구현은 w3.org에 명세된 Document Object Model (Core) Level 1 를 참조하여 이루어지고 있습니다.
각 인터페이스의 property와 method들은 python의 개발 철학에 맞추어 이름을 변경하기도 하였습니다.
예:
Javascript API:
Node.childNodes()
Python API(본 프로젝트):
Node.child_nodes()