'2016/08'에 해당되는 글 2건

  1. 2016.08.16 PyconKR 2016 정리
  2. 2016.08.11 특정 주제 목록 캡쳐그림/목록 가져오기 (Python)
IT/후기2016. 8. 16. 15:09

Pycon 2016 정리


작년에 일정에 쫓겨 못갔지만 이번 파이선은 아주 천재일우의 기회로 다녀오게 됨. 그것도 3일간 풀로 말이다. 물론 기대가 너무 커서 실망도 크지만 얻은것도 많았다. 대부분 ML 주제가 거의 차지한 거같았다. 다른 세션은 많이 비우는 경우도 생기고. 데이터 분석이 대세인가 싶다. 마지막 날은 튜토리얼 하는 날인데 가서 실제로 Django가지고 간단한 웹서비스도 만들었고 이를 cloud에 배포까지 해보는 실습을 해보면서 장고걸스 / django를 알아보는 좋은 기회도 있었다. 


아래는 내가 우선 놓친(다른 것을 듣느라) 세션들이다. 나중에 유투브가 올라오면 영상까지 볼 만한 것들이다.

뉴스를 재미있게 만드는 방법; 뉴스잼 링크

Django로 쇼핑몰 만들자 링크

Basic Statistics with Python 링크

TOROS: Python Framework for Recommender System 링크

파이썬으로 기초 산수 풀어보기 (이것은 튜토리얼이므로 나중에 업데이트할 예정)

Python으로 IoT, 인지(Cognitive), 머신러닝 삼종세트 활용하기 링크

Django vs Flask, 까봅시다! 링크

검색 로그 시스템 with Python 링크

Decision making with Genetic Algorithms using DEAP 링크

파이썬 데이터 분석 3종 세트 - statsmodels, scikit-learn, theano 링크  


나중에 들은것은 다시 강의 보고 한번 내용 요약해서 올릴 예정.


'IT > 후기' 카테고리의 다른 글

Polyglot Programming  (0) 2015.03.13
2013 JCO 후기  (0) 2013.02.23
Posted by 억사마
데이터분석/R & Python2016. 8. 11. 18:03

파이선 컨을 앞두고 파이선 재미난 코드 snippet 을 보다가 하나 따라해봄. (출처)

주피터에 있는걸 복붙. 사전에 webkit2png  설치가 필요하며 그리고 실행하는 경로에 images라는 폴더 생성을 해야한다.



import requests # http 
import bs4  # beautiful soup
import re # reqular expression
import subprocess # capture screen
import json  #json util
import os # os util 사용하기 위
In [39]:
# Requests
BASE_URL_SDS = "http://search.daum.net/search?nil_suggest=btn&w=news&DA=SBC&cluster=y&q=%EC%82%BC%EC%84%B1sds"
data = requests.get(BASE_URL_SDS)

# row개수 확인
data = bs4.BeautifulSoup(data.text)
# 아래는 reqular expression을 이용하여 totalCount를 가져오는 예제
match = re.search("totalCount: [0-9]+", data.text)
# total Count를 가져오는 부분이며 두번째 인덱스에 숫자가들어있것지
total_count = int(match.group(0).split("totalCount: ")[1])
/Users/jouk/Workspace/python/test/images
In [50]:
# 총 페이지 개수 (페이지당 10개)
pages = total_count / 10 + 1
article_data = [] #아티클 보관할 배열 생성

# 오호라 이 문법은 정말 신기하구먼 자바랑 좀 다른건가 for in 하고 비슷하긴한데 range라는게 있구먼..
for page in range(1, pages+1):
    TARGET_URL = BASE_URL_SDS + "&p=" + str(page)
    data = requests.get(TARGET_URL)
    data = bs4.BeautifulSoup(data.text)
    articles = data.findAll("div", attrs={'class': 'cont_inner'})

    for article in articles:
        title_and_link = article.findAll("a")[0]
        title = title_and_link.text.encode('utf-8')
        link = title_and_link["href"]

        date_and_media = str(article.findAll("span", attrs={'class': 'date'})[0])
        date = date_and_media.split("\n")[1]
        media = date_and_media.split("\n")[2].split("</span> ")[1]

        article_data.append(
            {
                "title": title,
                "link": link,
                "date": date,
                "media": media,
            }
        )
        
        # 아래를 실행하기 위해서는 http://www.paulhammond.org/webkit2png/ 에서 우선 webkit2png가 필요!!
        # ScreenShot
        subprocess.call([
            "webkit2png",
            "-F",   # only create fullsize screenshot
            "--filename=temporary",
            "--dir=" + os.path.join(os.getcwd(), "images"),
            link
        ])
        # Rename Screenshot
        # webkit2png --filename=FILENAME 옵션을 사용하면 한글깨짐 문제 발생
        for filename in os.listdir("./images/"):
            if filename.startswith("temporary"):
                os.rename(
                    os.path.join(os.getcwd(), "images", filename),
                    os.path.join(os.getcwd(), "images",
                                "Screenshot_" + date + "_" + media + "_" + title.replace(" ", "_") + ".png")
                )

# Result as JSON
# 단, ensure_ascii 옵션으로 UTF-8 ( 한글로 보이도록 ) 출력한다.
with open('result.json', 'w') as outfile:
    json.dump(article_data, outfile, ensure_ascii=False)        





Posted by 억사마