본문 바로가기

파이썬 크롤링 005 - 쇼핑몰 상품정보 (with selenium) / 데이터수집 자동화 앞선 포스팅에서 파이썬 코드를 통한 크롤링 기본적인 내용을 한 번 정리해봤습니다. 너무너무너무 단순했죠? 이번에는 조금 다른 방법으로 크롤링을 해보려고 합니다. 바로 Selenium 라이브러리를 통해서 크롤링 하는 것인데요. 아래서 조금 더 자세하게 설명해드리겠습니다. 크롤링에 대한 기본적인 내용을 보시려면 아래 링크로 걸어드리는 4개 포스팅을 보시면 조금 감을 잡을 수 있지 않을까? 라고 생각합니다. 2020/04/19 - 파이썬 크롤링 001 - 구성요소, 구현방법 2020/04/26 - 파이썬 크롤링 002 - 크롤러 구현 2020/05/03 - 파이썬 크롤링 003 - 파서 구현 2020/05/05 - 파이썬 크롤링 004 - 파싱 결과 저장 기존에 파이썬 requests 라이브러리를 활용해서 간.. 더보기
파이썬 크롤링 003 - 파서 구현 / 데이터수집 자동화 벌써 3번째 글이네요. 앞에 001, 002 글에서 이어지는 글이라서 관심있는 분들은 한 번 읽고 이번 글을 읽으시면 더 이해가 쉬울 것 같습니다. 아래 링크로 달아둘게요. 2020/04/19 - 파이썬 크롤링 001 - 구성요소, 구현방법 2020/04/26 - 파이썬 크롤링 002 - 크롤러 구현 이번 포스팅은 제목에도 나와있지만 파서를 구현하는 내용입니다. 정확하게는 멋진 라이브러리를 사용해서 크롤링한 데이터에서 원하는 내용만 뽑아내보는 것이죠. 002 포스팅 예제에서 주식 정보가 나와있는 사이트를 예로 들었는데 이번 포스팅에서도 이어서 사용해봅니다. 위 그림에서 오른쪽에 박스 그려둔 곳 보이시나요? 저곳에 있는 정보를 파싱하는 대상으로 설정해보죠. 그렇다면 아래와 같은 코드로 가능합니다. 코드를 .. 더보기
AB 테스트 쉽고 빠르게 하는 방법 - 002 (Google Optimize) 2017/05/11 - AB 테스트 쉽고 빠르게 하는 방법 - 001 이전 포스팅에서 이어집니다. 이번에는 Google Optimize를 조금 더 알아보는 것을 준비했고요. 바로 시작하겠습니다. 1. account 를 하나 만들어줍니다. https://optimize.google.com/optimize/home/#/accounts 위 주소에 들어가서 아래 그림과 같이 account를 하나 추가해줍니다. 저는 blog에 Google Optimize를 달아보고 싶어서 ngee라는 account를 만들고 ngee container를 만들었습니다. 잘 만드시면 위와 같이 account, container가 생성된 것을 보실 수 있습니다. 2. Container를 누르면 아래와 같은 화면으로 이동합니다. 3. L.. 더보기
locust.io basic test Locust라는 오픈소스를 활용해서 부하테스트를 해봤어요. (site : http://locust.io/, documentation : http://docs.locust.io/en/latest/) JMeter가 대표적이긴 한데요. 파이썬 기반으로 옮기고 싶었고 기능이 많지 않아도 부하만 잘 걸어줄 수 있으면 좋겠다고 생각했거든요. 아무튼 Locust를 사용해본 내용을 간단하게나마 정리해둡니다. 1. install pip install locustio 2. locust file create documentation 을 참고하셔서 테스트를 코드로 만들면 됩니다. 3. execute 단일 환경에서 부하를 발생할 때에는 locust -f locust_file.py --host=domain_name 으로 실행하면.. 더보기
django - model field example django model field에 대해서 작성해봅니다. model field는 여러 가지가 있고, 옵션(option)들도 있어서 원하는 form이나 database table을 만들 수 있습니다. 여러 model field를 한 번 생성해보고 admin 페이지에서 어떻게 보이는지확인해보는 것이 이번 포스팅의 목적입니다. 일단 model field에 대한 django 공식홈의 문서는 아래 url과 같습니다.url : https://docs.djangoproject.com/es/1.9/ref/models/fields/ model filed option에 대해서는 아래 url을 참고하세요.url : https://docs.djangoproject.com/es/1.9/topics/db/models/#field.. 더보기
Python Performance 05 - list, dqueue 1. Python Performance 01 - String Concatenation : http://ngee.tistory.com/710 2. Python Performance 02 - Loops : http://ngee.tistory.com/711 3. Python Performance 03 - Eliminate Dots : http://ngee.tistory.com/712 4. Python Performance 04 - Call Function : http://ngee.tistory.com/7135. Python Performance 05 - List, Dqueue : http://ngee.tistory.com/799 파이썬 성능과 관련된 포스팅을 모아두려고 합니다. 다섯 번째는 List와 dque.. 더보기
파이썬 basic - 리스트 (append, pop, insert) 오늘은 리스트 함수 3개에 대해서 정리해두려고 합니다. 참고 사이트는 https://docs.python.org/2/tutorial/datastructures.html 입니다. 사용하는 리스트는 아래와 같이 생겼다고 가정할께요. tList = ['a', 'b', 'c', 'd'] 1. append 먼저 append는 리스트의 맨 마지막에 새로운 요소를 추가하는 것입니다. tList.append('e') 위와 같은 문장을 실행하면 리스트가 아래와 같이 변경되겠죠. 2. insert 꼭 맨 마지막에 새로운 요소를 추가해야 하는 것은 아니죠. 특정 인덱스(index)에 새로운 요소를 추가하고자 할 때는 insert 라는 함수를 사용할 수 있습니다. 예로 0번째 인덱스에 'f' 를 추가하기 위해서는 아래와 같이.. 더보기
Django Forms(004) - submit form Blog Posting - Django Forms Django Forms(001) - init : http://ngee.tistory.com/736 Django Forms(002) - create page : http://ngee.tistory.com/737Django Forms(003) - create form : http://ngee.tistory.com/739Django Forms(004) - submit form : http://ngee.tistory.com/740 001, 002, 003에 이어서 이번에는 004 submit form입니다. 결론적으로는 잘 까먹는 저를 위해서 작성해두는 포스팅이구요. 혹시라도 읽고 계시는 분이라면 순서대로 읽고 계시다고 가정하고 내용을 정리합니다. 앞선 포스팅에.. 더보기
JMeter Plugin Installation (플러그인 설치) JMeter 플러그인을 설치하는 방법에 대해서 간단하게 그림 몇 개와 같이 정리해둡니다아 :) 1. JMeter가 설치된 폴더 찾기 - 음 설치하는 방법은 다음에 하구요. 이번에는 Plugin을 설치하이 위해서 JMeter가 어디에 설치되었는지 확인하시면 됩니다. 이건 설치하는 사람마다 다를 수 있구요. 저는 /opt/jmeter/apache-jmeter-2.12 에 설치해두었습니다. 혹시 까먹으신 분들은 jmeter-server 같은 것을 find로 검색해보세요. 아마도 나오지 않을까요?? find / -name jmeter-server 2. 플러그인 다운로드 받기 - 플러그인 중에서 가장 많이 사용되는 것으로 보이는 Standard 플러그인은 다음 주소에서 다운로드 하실 수 있습니다. Download.. 더보기
Python Performance 02 - Loops 1. Python Performance 01 - String Concatenation : http://ngee.tistory.com/710 2. Python Performance 02 - Loops : http://ngee.tistory.com/711 3. Python Performance 03 - Eliminate Dots : http://ngee.tistory.com/712 4. Python Performance 04 - Call Function : http://ngee.tistory.com/713 5. Python Performance 05 - List, Dqueue : http://ngee.tistory.com/799 파이썬 성능과 관련된 포스팅을 모아두려고 합니다. 두 번째는 Loop 처리를 어.. 더보기
시놀로지(Synology) Git Server 설치 제가 사용하는 시놀로지 버전? 기계는 DS215J 입니다. 일단 시놀로지 제품으로 Git Server 설치 및 활용하는 것을 테스트해본 결과 잘 되네요. 시놀로지 웹에 접속해보면 몇 가지 기능이 있는데 그중에 패키지를 설치할 수 있는 녀석이 Package Center 입니다. 아래 사진을 참고해서 Git Server를 설치하실 수 있습니다. 저는 설치해서 Open으로 나타나지만 설치 전에는 Install로 나타납니다. Git Server를 사용하기 위해서는 SSH를 설정해두시는 것이 좋겠죠. 옆 포스팅에 SSH 설정에 대해서 정리했습니다. : http://ngee.tistory.com/625 또 git server를 활용하는 기초 방법에 대해서도 정리한 적 있구요. : http://ngee.tistory.. 더보기
Celery Flower install and access *관련 포스팅 내용 Celery + RabbitMQ + Django 참조사이트 : http://ngee.tistory.com/540 Celery + RabbitMQ + Django 연계 1 : http://ngee.tistory.com/542 Celery + RabbitMQ + Django 연계 2 : http://ngee.tistory.com/548 Celery + RabbitMQ + Django 연계 3 : http://ngee.tistory.com/549 Celery Args : http://ngee.tistory.com/550 Celery Worker : http://ngee.tistory.com/563Celery Worker2 : http://ngee.tistory.com/564Celery Lo.. 더보기
Go basic - Package (패키지) Go에서 제공하고 있는 내장 패키지들은 아래 그림과 같이 있더라구요. 다음 웹 페이지에 잘 소개되어 있습니다. Packages : http://golang.org/pkg/ Go에서 만드는 프로그램은 패키지로 구성된다고 합니다. http://go-tour-kr.appspot.com/#4 예제에서 살펴볼 수 있는 것 같이 내장 fmt, math 패키지를 불러올 수 있고, 그것을 가져다 쓸 수도 있구요. math.Pi 처럼 말이죠. 그럼 저희가 코딩하는 것도 Package로 만들어지고, 그것을 불러다 쓰는 것은 기초적인 부분이니깐 체크하고 넘어가도록 하겠습니다. 위 Link에 있는 소스를 main으로 하고, 다른 Package를 만들어보죠. 구조는.. 아래와 같이됩니다. --- ProjectHome (dire.. 더보기
iOS library 004 - Shimmer 라이브러리, Facebook 페이지 앱 적용 효과 Shimmer 라이브러리가 공개되어서, 테스트해보고 포스팅해봅니다. Facebook 페이지 앱에서 사용된 효과라고 하던데, 저는 아직 페이지 앱을 써본 적이 없어서..;; 한 번 사용해봐야 할 것 같네요. 아무튼 Shimmer 라이브러리는 Github에서 다운로드 할 수 있는데요. 주소는 다음과 같습니다. https://github.com/facebook/Shimmer 물론 cocospods에도 올려졌더라구요. cocospods을 사용 하실 수 있는 분들은 이 방법이 더 편하겠죠? 아무튼 테스트 해봤습니다. 저는 직접 소스를 다운로드해서, 프로젝트에 추가하는 방식으로 했구요. 아래 보시면 shimmer라는 그룹을 만들고, 거기에 다운로드한 소스에서 필요한 것들을 추가했죠 :) 스토리보드에서는 할 일이 없.. 더보기
iOS - segmented example (세그먼트 간단 예제) 이번에는 iOS 개발할 때 Segmented Control을 사용하는 간단한 예제를 작성해보려구요. 빠르게 시작!!!! 1. 프로젝트 생성 저는 프로젝트 생성 할 때 Single View Application을 주로 선택해서 시작해요. 간단한 부분이니깐 그림으로 때우죠. 2. 스토리보드 작업 일단 프로젝트를 만들고, Main.storyboard에 들어가보시면 빈 화면이 나오겠죠? :) 세그먼트를 테스트하기 위해서 View에 segmented control과 label 각 1개 씩 뷰로 옮겨줍니다. 그림은 클릭해서 보시길 추천드려요 :) 그럼 이제 소스코드와 연결하기 위해서 Assistant editor를 선택하고 아래 그림과 같이 연결해줍니다. 방법은 소스코드와 연결하기 위한 오브젝트를 선택하고, Ctr.. 더보기