TIL
Web Crawling project - QPD site HTML code analysis(1) 품목 검색 시 URL 규칙 찾기 및 세부 리스트 table의 규칙 찾기
0_hoonie
2022. 1. 4. 21:00
QPD 사이트에서 노가다로 획득해야 하는 Mil-spec 정보를 웹 크롤링을 통해 엑셀 데이터로 끌어와서 업무 효율성을 높이려는 프로젝트를 진행 중이다.
그 프로젝트 과정에 있어 일부 느낀 점, 혹은 중요 아이디어 등을 기록으로 남긴다.
1. 품목 검색 시 URL 주소 변화를 관찰했다.
M83536을 검색해서 세부 항목으로 타고 들어가자 아래와 같이 URL이 나왔다.
https://qpldocs.dla.mil/search/parts.aspx?qpl=1780¶m=M83536/06-017L&type=8
그 결과 qpl=1780 이 M83536 QPL 번호라고 추측 가능했다. 실제로 https://qpldocs.dla.mil/search/parts.aspx?qpl=1780 이렇게만 링크타고 들어가보자 M83536리스트가 뜨는 화면이 나왔다.(아래와 같은 결과가 나옴)
이를 통해 qpl = '변수'를 선언해서 1부터 9999999까지 돌리면.. 모든 데이터들이 검색되지 않을까 추측한다.
이제 각 품목에 대한 리스트로 타고 들어가는 방법을 알았다면, 이제 세부 리스트로 들어가는 방법을 찾아야 하는데,
각 리스트에 대한HTML 코드를 분석해본 결과, Element id="Lu_gov_DG_ctl03_btnGovPartNo" 에서 ctl03이 바뀌는 것을 파악 할 수 있었다.
1 Page
2page도 동일 할지 HTML 소스 분석해본 결과 1page와 동일하게 ctl03 부터 시작한다.
그러므로
Lu_gov_DG_ctl03_btnGovPartNo
최대 table의 크기가 03~27 까지 인 것으로 추측 가능하다.
그러면 for 문을 돌릴 수 있지!
이것에 대한 구현은 내일 진행하기로.