https://github.com/mugju/Part-time-Job-Finder/releases/tag/1.0
※현재 해당 프로젝트는 사이트 정책 문제로 ip밴의 가능성이 있습니다.
사용을 권장드리지 않습니다
약간의 일기글 형식입니다.
위 프로그램은 음.. git의 release를 써본 첫번째 나의 프로젝트이다.
우리나라에 알바를 찾는다고 하면, 대부분은 알바몬 혹은 알바천국을 실행할 것이다.
그런데 이게 여간 귀찮은게 아니다. 찾다보면 광고글도 많고, 직원을 구하는 글도 많다
우리는 끈기를 가지고 아르바이트를 찾아야 한다..
이걸 좀 편하고 쉽게할수 있는 방법은 없을까 생각해보다가 뭔가를 해보려면 크롤링밖에 답이 없겠다 싶어 bs4를 이용한 크롤링을 진행했다.
그리고는 "나만쓰는것보다 누군가가 쓸수 있는 형태로 했으면 좋겠다" 라는 생각에 gui를 입히기로 했고 이전에 사용해봤던 PyQt5를 쓰기로 선택했다.
누군가 쓰기위해서는 python이 안깔린 컴퓨터에서도 실행이 가능해야한다. 배포용 프로그램을 만들어야하는데 이를 위해 Pyinstaller를 사용했다.
그리고선 든 생각이 "왜 지금까지 .exe로 배포할생각은 안했지?" 였다.
학교과제는 소스코드로 내기 바빴고, 개인이 짠것은 이걸 누가쓰겠어 하는 생각에 그냥 깃에다만 고이 모셔놓고 방치했다. 너무 어리석지 않았나 싶다 ㅎㅎ
아무튼 개발을 시작하고 정말 여러가지 문제가 있었다. PyQt의 쓰레드구현 , pyinstaller의 패키지 인식문제 , 각 크롤링대상 홈페이지의 지역코드 수집문제.. 등등
그런 우여곡절끝에 나름의 번듯한 크롤러를 만들었다. 기능적으로 너무 미흡하지만 뿌듯했다.
이 프로그램은 알바몬/ 알바천국의 알바리스트를 크롤링해서 자동으로 중복되는 알바매장은 날려주고 해당 리스트를 .csv로 같은 폴더내에 저장한다.
또한 알바몬 크롤링의 경우 robots.txt를 확인했을때는 google-bot이외에 다른 크롤러에대해서는 제약이 없어서 크롤링을 진행했는데
크롤링에 대한 제약이 있어 알바몬을 크롤링할 경우에는
프로그램 내부에 QtWebEngine을 통해 보안인증후, 크롤링을 진행할수 있게 만들었다.
부족한 프로그램이지만 이 글을 보는 누군가가 이걸 사용한다면 너무 기쁠것 같고, 부족한점이 있다면 피드백해주면 너무 좋을것 같다.
'개발 이슈,해결법' 카테고리의 다른 글
[mysql] mysql 에서 password 컬럼을 찾을 수 없을 (0) | 2021.10.22 |
---|---|
PyQt5 QComboBox 예제 (행정구역 선택에 따른 하위 행정구역 선택) (0) | 2021.07.30 |
Beautiful Soup을 사용한 사이트크롤링중 한글깨짐 문제 (1) | 2021.07.24 |
AttributeError: Module 'PyQt5' has no attribute '__version__' (0) | 2021.07.19 |
anaconda prompt에서 pyqt5 실행하기 (0) | 2021.07.01 |