요구사항
- 지식인프로필의 답변목록에서 주소, 답변번호, 등록일 추출 프로그램 개발
- 윈도우 10 / python 3.8 / selenium 3.141.0 사용자 환경에서 정상 동작해야 합니다. (가상환경 사용 안합니다)
요구사항 분석
- 초기화
- 프로그램 실행하면
output.txt, output2.txt, error.txt 는 새로 만든다.
- input
- input.txt 지식인 프로필 링크와 날짜(또는 전체 또는 페이지)를 입력한다.
input.txt 예시) 프로필 링크[tab]추출날짜
- input에 페이지 번호(예: 3페이지)가 있으면 답변 목록에서 1페이지 부터 3페이지 까지 정보를 추출한다.
- 전체 경우 답변목록 전체에서 정보를 추출한다.
- 추출 날짜인 경우 현재일 부터 추출날짜까지 답변 목록을 추출한다.
- 해당 조건의 답변목록이 없으면 추출없이 다음 input 주소 사용한다.
- output
- 예외 처리
- 프로그램 오류가 발생하면
error.txt 저장 (오류발생 input[탭]오류내용) 하고 다음 input 라인 실행한다.
- 종료
- 프로그램 종료되면 "프로그램 종료" 메시지를 출력한다.
셀레니움 3.141.0 버전에서 Chromedriver 실행시 잘못된 Timeout object가 전달되는 건에 대한 분석
- 발단 :
- 수주 프로젝트 코딩 중 Selenium 3.141.0 버전에서 Chromedriver와 구버전 Selenium 간의 호환성 문제로 의심되는 ValueError가 발생하였고, 이를 해결하기 위한 방법을 찾기 위해 코드를 상세히 분석함.
- 에러 내용 :
Timeout value connect was <object object at 0x00000201DBC64E50>, but it must be an int, float or None.
- 사용 환경
- Selenium : 3.141.0
- python : 3.8
- 가장 쉬운 해결책은, Selenium 4를 사용하는 것.
- 그러나 의뢰주 측에서 3.141.0 버전에서 실행되는 프로그램을 원했음.