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 문을 돌릴 수 있지!

 

이것에 대한 구현은 내일 진행하기로.