Async를 사용하여 콜백 정리하기

Javascript의 비동기 콜백 함수를 사용하다보면 인덴트로 인해 코드가 복잡해지는 경우가 많이 있다. async 라이브러리를 통해서 비동기 콜백 함수를 정리하여 순차적으로 실행되도록 할 수 있다. 비동기 콜백이란? Javascript를 사용하다보면 비동기 콜백으로 인해 코드의 순서가 꼬이는 경우가 많다. Javascript의 비동기 콜백은 Java나 C 에서 Thread를 생성하여 메인 함수와 별도의 프로세스로 ...

WebdriverIO 를 사용한 웹 데이터 수집

웹 상의 데이터 수집 시 크롬, 사파리 등의 웹 브라우저를 WebdriverIO를 통해 제어하여 수집하는 방법을 소개한다. 사전지식 javascript jQuery Node.js Reference http://webdriver.io https://www.npmjs.com/package/selenium-standalone http://selenium-release.storage.googleapis.com/index.html Dependencies Selenium Standalone 설치 $ npm install -g selenium-standalone $ selenium-standalone install Nodejs 라이브러리 ...

파이썬 트위터 데이터 수집 및 유니코드 문자 한글 변환

아래의 코드는 트위터 스트림을 수집할 때 유니코드로 변환된 문자열을 한글로 변환시켜주는 예제이다. 사용된 파이썬의 버전은 3.5 이고 tweepy 라이브러리를 사용하였다. # -*- coding: utf8 -*- import tweepy consumer_key='your-consumer-key' consumer_secret='your-consumer-secret' access_token='your-access-token' access_token_secret='your-access-token-secret' auth = tweepy.OAuthHandler(consumer_key, consumer_secret) auth.set_access_token(access_token, ...

Java 대용량 xml 파싱

최근 어떤 작업을 하면서 대용량 xml 데이터를 파싱할 일이 생겼었다. 여지껏 웹 상에서 xml 제공되는 API 와 RSS를 파싱한 적은 많았지만 GB 단위의 대용량 xml 파일은 다루어 본 적이 없었기 때문에 많은 생각을 해보았다. 이러한 데이터를 어떤 방식으로 다루면 좋을까 고민을 하다가 사용한 방법을 이 글을 통해 정리하였다. 인터넷 상에서 검색해보면 대용량 xml 파일을 파싱할 경우에는 ...

MySQL 명령어 정리

MySQL 접속 # mysql -u username -p   Database 관리 mysql> SHOW databases; mysql> CREATE DATABASE dbname; mysql> DROP DATABASE [IF EXISTS] dbname; mysql> USE dbname;   MySQL 사용자 추가 mysql> GRANT ALL PRIVILEGES ON dbname.* TO username@localhost IDENTIFIED BY 'password';   Table 관리 mysql> USE dbname; mysql> SHOW tables; mysql> CREATE TABLE tablename(col1 type, col2 type, ...); mysql> EXPLAIN tablename; mysql> DESCRIBE tablename; mysql> ...