예전에는 파이썬에서 웹을 다룰 때 urllib, urllib2, beautifulsoup를 많이 사용했습니다.

알려진 웹 관련 라이브러리래봐야 저 정도가 전부였기도 하고...


요즘엔 requests라는 라이브러리를 많이 사용하고 실제로 써보니 확실히 많이 편하구요.

처음 requests를 사용한건 IP 조회 코드가 필요해서 쓰게 됬는데, 그 이후로 웹 관련 코드 작성할 때는 requests만 쓰고 있습니다.


다만 이 라이브러리에서의 문제는 간혹 한글이 깨져서 출력되는 경우가 있다는 것...

웹 페이지 인코딩 설정에 따라 다른 것 같은데 req.text로 결과값을 가져올 경우 한글이 깨지는 경우가 발생합니다.


문제 해결은 간단하게 해결했는데.. req.content로 결과값을 출력시켜주면 됩니다.

원인은 req.text는 값을 'unicode'형으로 가져옵니다.

반면, req.content는 'str'형으로 값을 가져오구요.



unicode로 값을 가져올 경우 코딩하다보면 아주 짜증나는 문자 체계덕에 좀 꼬이는 경우가 발생하는 것 같습니다.

unicode 처리할 때 종종 쓰는 codecs 라이브러리나 다른 .encode(), unicode() 등을 쓰지 않고도 requests 라이브러리 자체적으로 해결되니 진짜 잘 만들어진 라이브러리란 생각도 드네요.



참고 : http://stackoverflow.com/questions/11435331/python-requests-and-unicode

저작자 표시 비영리 변경 금지
신고

+ Recent posts

티스토리 툴바