분류 전체보기 129

[Django] 코호 - 실시간 코인 호재 모음 PROC 2

순조롭게 진행되는 것 같았지만, 거대한 문제와 마주치게 될 것 같다. 해결한 문제 41페이지 전체를 크롤링 가능. 페이지 url은 뒤에 ?page=번호 이렇게 붙여주면 되기 때문에 1부터 계속 반복시키고, 만약 url이 없다면 반복문을 멈추도록 설계했다. 페이지는 42페이지까지 존재하는데 html.status(url) 함수로 url존재 여부를 판단할 수 있다. 전체 코드 from urllib.request import urlopen from bs4 import BeautifulSoup import re month = { 'Jan' : 1, 'Feb' : 2, 'Mar' : 3, 'Apr' : 4, 'May' : 5, 'Jun' : 6, 'Jul' : 7, 'Aug' : 8, 'Sep' : 9, 'Oct'..

[Django] 코호 - 실시간 코인 호재 모음 PROC 1

코인 호재 정보를 한 곳에 모은 사이트를 만들려고 한다. 프로젝트 이름은 아직 안정했는데 멋진 이름을 구상중에 있다. 두명이서 진행하는데, 나는 크롤링 부분만 맡을 것 같다. 그 과정을 기록하려고 한다. 원래는 DAY 1 , DAY 2 이런식으로 제목을 하려했지만. 하루에 하는 양이 많고 과정의 흐름에 맞게 잘라내기 위해 process 1, process 2 이런식으로 제목을 수정했다. 1. 해결한 문제, 2. 마주친 문제, 3. 해결해야 할 문제 이렇게 정리하겠따..! 우선 크롤링에 대한 저작권적인 문제를 검색해봤다. 국내 판결과, 해외 판결의 사례를 찾아봤고 어차피 개인적인 사이트를 만드는 것이지만, 후에 상업적인 이용을 할지 모르고 그것이 불법이라면 문제가 될 수 있기 때문이다. 국내 판결, 야놀자..

[MySQL] SQL ZOO Self join Quiz 답 해설

Self join Quiz - SQLZOO sqlzoo.net 1. Self JOIN 사용 Self JOIN이란 자기 자신을 결합 시키는 조인이다. 하지만 어려울 것 없다. 그냥 테이블이 하나 더 있다고 생각하고 그걸 결합하는 것이다. 자기 자신의 데이터가 필요할 수 있고, 그것을 JOIN해서 사용하는 것 뿐이다. name이 Craiglockhart 인 stops의 route는 여러개 일 것이고, 그중 stop이 Haymarket인 데이터를 출력하면 된다. 2. 결합, 그런데 이제 JOIN을 안사용. 복잡해보이겠지만, FROM에 테이블을 여러개 집어넣고 WHERE문에서 조건을 거는 형식이다. 3. Self JOIN 두번 사용 a

[MySQL] SQL ZOO Using Null Quiz 답 해설

Using Null Quiz - SQLZOO Test your understanding of the NULL value teacher id dept name phone 101 1 Shrivell 2753 102 1 Throd 2754 103 1 Splint 104 Spiregrain 105 2 Cutflower 3212 106 Deadyawn dept id name 1 Computing 2 Design 3 Engineering Select the code which uses an outer join sqlzoo.net 1. OUTTER JOIN 사용 JOIN에는 OUTTER와 INNER이 존재하고, OUTTER은 합집합, INNER은 교집합이다. 간단하게 기억을 하려면 OUTTER은 NULL값을 포함하고..

[MySQL] SQL ZOO JOIN Quiz 2 답 해설

JOIN Quiz 2 - SQLZOO Crocodile Dundee in Los Angeles1 sqlzoo.net 1. JOIN의 사용 JOIN 뒤에 ON을 사용한다. BY에 낚이지 말자. 2. JOIN 두번 사용 AND로 합치지 않는다. JOIN XXX ON XXX JOIN ZZZ ON ZZZ 이렇게 연달아 이어 붙여주면 된다. 3. JOIN 사용, GROUP BY, ORDER BY 사용 이게 순서가 있는데, FROM WHERE GROUP BY ORDER BY LIMIT offset 이 순으로 사용하면 된다. ORDER BY 숫자가 나오는데, 직접 돌려보니깐 2번째 인자를 기준으로 정렬해준다. 즉 name, COUNT(movieid) 중 두번째 인자인 COUNT(movieid)로 정렬해준다. ORDE..

[MySQL] SQL ZOO JOIN Quiz 답 해설

JOIN Quiz - SQLZOO 1002 8 June 2012 Stadion Miejski (Wroclaw) RUS CZE sqlzoo.net 1. JOIN의 사용 JOIN 합칠 테이블 ON (합치는 조건) 이렇게 사용하면 된다. game 테이블과 goal 테이블을 연결 시킬 수 있다. game에는 id 값이 하나씩 들어 있다. 하지만 goal에는 matchid 값이 똑같은게 여러개 들어 있다. 한 게임당 골은 여러개씩 나올 수 있고, 골이 없을 수도 있다. JOIN에는 INNER JOIN과 OUTTER JOIN이 있는데 이렇게 그냥 JOIN을 쓰면 INNER JOIN이다. 차이점은 INNER은 교집합, OUTTER은 합집합이다. 골의 데이터 중 matchid값이 없는 것도 있을 것이다. 앞에서 말했듯..

[MySQL] SQL ZOO Nested SELECT Quiz

Nested SELECT Quiz - SQLZOO sqlzoo.net 1. 서브쿼리 ALL의 사용 ALL은 모든 값을 만족 시켜야 참이다. 같은 지역중 인구가 가장 적은 데이터에 접근한다. 2. 서브쿼리 ALL의 사용 이전 문제랑 똑같다. 3. 서브쿼리 ALL의 사용, 나눗셈 연산, != 사용 같은 지역이지만, 자기 자신과 비교하면 안된다. ALL에 같은 지역, 같은 나라가 포함된다면 Less를 만족할 수 없다. 왜냐면 A와 A 나라는 인구수가 같기 때문에 < 연산을 만족할 수 없기 때문이다. 하지만 선택형이기 때문에 여기까지 생각할 필요는 없고 비교와 나누기 연산만 주의해서 선택하면 된다. 4. 서브쿼리의 두번 사용 영국의 지역은 유럽이고, 유럽내의 포함된 나라 이름과 영국의 인구수보다 높은 나라를 표..

[Python] 백준 14567 선수과목 (Prerequisite)

14567번: 선수과목 (Prerequisite) 3개의 과목이 있고, 2번 과목을 이수하기 위해서는 1번 과목을 이수해야 하고, 3번 과목을 이수하기 위해서는 2번 과목을 이수해야 한다. www.acmicpc.net 위상정렬 : 다이나믹 프로그래밍도 사용해야 한다. 처음 진입차수 0을 큐에 넣을때, DP값을 1로 초기화 해준다. 이건 곧바로 이수할 수 있는 과목이기때문에 1을 넣는 것이다. DP[i]값 업데이트는 이전 노드의 DP값 + 1 또는 원래 DP[i]값 중 최댓값을 택하면 된다. 전체코드 import sys import collections input = sys.stdin.readline N, M = map(int, input().split()) inDegree = [0 for _ in ran..

[MySQL] SQL ZOO Nobel Quiz 답 해설

1. LIKE 두번 사용 LIKE 'C%' -> C로 시작하는 문자열 LIKE '%n' -> n으로 끝나는 문자열 이거 두개를 AND로 이어주면 된다. 2. COUNT 사용 COUNT(칼럼명) -> 칼럼의 데이터의 개수 집계함수를 WHERE절에서 사용해야 할때는 주의가 필요하다. 데이터가 여러개 들어와야 사용할 수 있다고 생각하면 편하다. 내가 생각한 팁(아닐 수 있음) SELECT절에서의 subject는 여러개의 subject데이터를 선택을 하니깐 사용가능 WHERE절에서의 subject는 subject칼럼의 데이터 1개 값을 의미하기때문에 사용이 불가능하다. 하지만 서브쿼리를 사용하면 사용이 가능하고 또, HAVING절에서 사용가능하다. 3. DISTINCT 사용, NOT IN 사용 DISTINCT ..

[MySQL] SQL ZOO BBC QUIZ 답 해설

1. LIKE 'XX%' 사용 LIKE 'U%'는 U로 시작하는 문자열 2. WHERE절 기본 그냥 쓰면 된다..! 3. 칼럼명과 데이터명 규칙 칼럼명에 작은따옴표를 붙이지 않는다. 4. SELECT문 나누기, WHERE절 비교문 그냥 하면 된다..! 5. IN 사용 하나라도 존재하면 참 6. IN 사용 이전 문제랑 같다. 7. WHERE절 AND로 조건 두개 AND로 조건을 두개 만족시키는 데이터를 찾을 수 있다.