[ElasticSearch] 검색엔진 만들기 3 – Python 검색 모듈 만들기 IMS 데이터는 앞서 Elasticsearch에 인덱싱 해두었고 이를 검색하는 모듈을 Python API 를 이용해서 만들어본다. Python Flask로 만들면 웹서비스를 직접 할 수도 있고 다른 프레임워크에 이식하기 위한 HTTP API 를 만들어내기도 간편한 것 같다. 쿼리 템플릿 먼저 검색에 사용할 쿼리를 만들어야하는데 kibana dev tools 에서 SQL 툴처럼 […]
[ElasticSearch] 검색엔진 만들기 2 – IMS 데이터 크롤링
[ElasticSearch] 검색엔진 만들기 2 – IMS 데이터 크롤링 Selenium, BeautifulSoup 를 이용해서 IMS 이슈 페이지 Crawler 를 만든다. 기초적인 부분은 [여기]()를 참고. 단위 크롤러 수집할 이슈 번호에 대한 리스트를 만들어 한번에 수집하고 Elasticsearch에 인덱싱 하는 IndexIssueList 함수를 만들었다. (IMS 는 이슈 번호를 URL(https://ims.tmaxsoft.com/tody/ims/issue/issueView.do?issueId=) 에 변수로 대입해서 각 이슈 페이지에 접근할 수 있다.) _LOGIN_ID = "IMS_USERNAME" […]
[ElasticSearch] 검색엔진 만들기 1 – Mac에 ElasticSearch, Kibana 설치
기존에 만들었던 IMS 검색엔진의 아이디어들을 정리하면서 동시에 Mac과 친해질 겸 Mac 환경으로 진행할 예정. 그리고 기존 검색엔진은 ELK 6 버전에서 만들었었는데 7 버전에서 구현해보며 최신 버전 체험도 해보려고 한다. 서버에 있던 소스들을 Mac 로컬 환경으로 내려받아 구동해보려고 했더니 index 만드는 것부터 변경 사항이 있었고, Search API에도 type 구조가 드디어 없어지면서 달라진 부분이 바로 눈에 띄었다. […]
[Mac] 단축키 정리
[Mac] 단축키 정리 Windows의 윈도우키를 이용한 단축키들과 비슷하게 맥에서도 Command 키를 이용한 단축키가 있긴한데 Control 키와 이래저래 조합이 되면서 좀 더 복잡한 것 같다. Windows 에서 자주 사용하던 기능들 위주로 먼저 정리해두고 새로 배우게될 때마다 추가로 정리해야겠다. 방향 이동 및 텍스트 편집 익숙한 윈도우에서의 단축키와 비교하면 윈도우 맥 Home command+← End command+→ PageUp option+↑ PageDown […]
HC님을 위한 WordPress & NextCloud 설치 절차 Part 2
HC님을 위한 WordPress & NextCloud 설치 절차 Part 2 freenom.com 무료 도메인은, 루트 도메인에 CNAME 주소(iptime ddns)를 매핑할 수 없는것같다. A Record 만 루트 도메인으로 지정할 수 있는 듯 기존에 하려고 했던 example.com 대문 example.com/blog 블로그 example.com/drive 클라우드 스토리지 위와 같은 구성 대신 다음과 같이 서브 도메인 주소를 이용해서 웹서비스를 분리할 예정. example.com / www.example.com […]
HC님을 위한 WordPress & NextCloud 설치 절차 Part 1
HC님을 위한 WordPress & NextCloud 설치 절차 Part 1 CentOS7 1810 버전 기준 사전 준비 사용자 및 디렉토리 생성 사용자 skia:hckim 디렉토리 앞서 생성한 사용자에 다음 경로에 대한 권한을 부여한다. /sw /sw/openssl /sw/httpd /sw/mysql /sw/php /data2 /data2/mysql /data2/drive /data2/docs 시스템 라이브러리 설치 yum -y install apr-devel apr-util-devel curl-devel pcre-devel libxml2-devel libwebp-devel libjpeg-devel libpng-devel libXpm-devel libicu-devel […]
[Mac] MacBook Air 렌탈
이번에 옮기게 된 곳에서 맥북을 사용한다하여 거금 13만원을 들여 맥북 에어를 15일 간 임대하게 되었다. 아래 옵션 중에서 두 개의 개인 장비를 신청하라고 연락이 왔는데 합류하게 될 팀에 알아보니 IMAC과 MacBook15를 보통 사용한다고 하셔서 똑같이 선택했다. 나름 대화면에 데스크톱 옵션이 있다는게 특혜인 것 같기도 하다. 과거 X1 3세대 사용자로서 사실 최신 X1이 갖고싶었는데 괜히 물어보고 […]
[Windows] notepad++ 세션 임시 저장 경로
notepad++는 세션 데이터가 남아있어 무심결에 저장하지 않고 사용하게 된다. 컴퓨터 포맷하는 순간 아차 하며 후회하지 말고 아래 경로도 꼭 백업해둬야할 듯 C:\Users\%USERNAME%\AppData\Roaming\Notepad++\backup\
[Nextcloud] Upload files through API
Upload files through API API 를 이용해서 nextcloud에 디렉토리를 생성하고 파일을 업로드할 수 있다. 지금 운영하고 있는 nextcloud는 서버 한 대에 디스크도 전부 한 장씩 싱글로 돌아가고 있지만 클라이언트가 여러 대 있기 때문에 굳이 데이터에 대한 백업이나 가용성을 설정할 필요는 없다. 대신 웹서버랑 메타데이터에 대한 백업은 별도로 필요한데 이 API를 이용하면 웹서버 덤프를 데이터화 시켜서 […]
[Python] Selenium을 이용한 Melon Playlist 추가 자동화
Melon Playlist 추가 자동화 Selenium을 이용해 Melon에서 음악을 검색해 Playlist에 추가하는 과정을 자동화한다. Bugs에서 Melon으로 갈아탔는데 그동안 Bugs에서 듣던 노래가 500곡이 넘어서.. 일일이 검색해 추가하기가 번거로워 Python Selenium으로 playlist 검색해 추가하는 자동화 스크립트를 만들어봄. Selenium은 세션을 이용해 크롤링을 할 수 있는 정도로만 알고있었는데, 패키지 내 WebDriver로서 활용할 수 있는 클래스가 많다. 로그인 하는 과정과 음악을 […]