본문 바로가기
728x90

코딩12

Dart 문제를 풀어보자! 1. Given a non-empty array of integers, return the result of multiplying the values together in order. - Ex) [1, 2, 3, 4] => 1 * 2 * 3 * 4 = 24 int grow(List arr) { // 뭘까요? } 2. Given a non-negative integer, 3 for example, return a string with a murmur: "1 sheep...2 sheep...3 sheep...". Input will always be valid, i.e no negative integers. String countSheep(numb) { // 뭘까요? } 3. Complete the meth.. 2023. 3. 26.
네이버 블로그 크롤링 하는 법 - 파이썬 웹 크롤링 - 스크롤이 계속 내려가는 사이트 크롤링 하는 법 일반적인 사이트는 1페이지, 2페이지 이렇게 나뉘어 있는 경우가 많다. 하지만 어떤 사이트들은 페이지 구분 없이 스크롤을 내리면 내릴수록 계속해서 정보가 나오는 사이트들도 있다. 이런 사 breakmatrix.tistory.com 저번 포스팅에 이어서 블로그 주소를 가져왔다고 치고 다음 단계로 넘어가려 한다. 그랬더니 정보가 오기는 하는데 html 값으로 되어있어서 전혀 읽을 수가 없다. 우선 가장 먼저 해야 할 일은 여기에 담겨있는 백 슬래시를 지워야 한다. html 값이 넘어오면서 백 슬래시가 있는 경우가 있는데 파이썬이 읽는데 방해가 되기 때문에 가장 먼저 지우도록 하자. 지우는 함수는 replace() 이므로 soup = BeautifulSoup(da.. 2022. 5. 25.
스크롤이 계속 내려가는 사이트 크롤링 하는 법 일반적인 사이트는 1페이지, 2페이지 이렇게 나뉘어 있는 경우가 많다. 하지만 어떤 사이트들은 페이지 구분 없이 스크롤을 내리면 내릴수록 계속해서 정보가 나오는 사이트들도 있다. 이런 사이트에서 일반적으로 크롤링을 시도할 경우, 처음에 나오는 정보들만 가져오고 스크롤을 내렸을 때의 정보를 가져오지 못할 것이다. 그렇다면 어떻게 해야할까. 네트워크 탭을 보면 뭐가 엄청나게 많이 나오는 것을 확인할 수 있는데 페이지를 내리면 내릴수록 업데이트가 된다. 네트워크 탭은 이 페이지를 보여주기 위해 서버에서 받아온 파일들을 보여주는 곳이다. 네트워크 탭을 켠 상태에서 스크롤을 쭉 내리다 보면 정확하게 페이지가 업데이트되는 시점에서 네트워크 탭도 같이 바뀌는 것을 확인할 수 있다. 그리고 또 내리면 또 바뀐다. 이걸.. 2022. 5. 25.
웹 크롤러 짤 때 유용한 팁 -soup.select()- select 문법 soup.select('.class명') -> 클래스 찾아줌. 여기서 . 은 html 용어로 클래스를 말함. soup.select('#id명') -> id 찾아줌. soup.select('태그명') -> html 태그 찾아줌. html 태그는 아무것도 안 붙여도 가능. 붙여서도 가능함 soup.select('lnl#sheet') 태그가 lnl 이고 id 가 sheet 이라는 데이터 출력 가능. 두개를 사용할 수도 있다. soup.select('.class명1 .class명2') -> 1번 클래스 안에 있는 2번 클래스 찾아주세요! (띄어쓰기는 ~안에라는 뜻이므로) bibi = soup.select('.wala .dodo em')[0].text print(bibi) 위의 것은 class_.. 2022. 5. 14.
파이썬으로 메모장 여는 법 - 파일 만드는 법- 파일 쓰는 법 a라는 제목의 텍스트 파일을 만들고 내용은 hello, world 로 써보겠다. 파일 = open('a.txt, 'w') 파일.write('hello, world') 파일.close() 이렇게 하면 a.txt 파일이 바로 만들어지는 것을 확인할 수 있다. 이름을 다르게 하고 싶다면 다른 이름으로 해도 가능. 중요한 점은 파일.close를 꼭 해줘야 한다는 점. 파일 읽는 법 파일 = open('a.txt, 'r') print( 파일.read() ) 파일.close() 이렇게 하면 파일 안의 내용이 터미널 창으로 출력되는 것을 확인할 수 있다. 파일에 추가하는 법 파일 = open('a.txt', 'a') 파일.write('wassup') 파일.close() 이렇게 하면 wassup이 추가되.. 2022. 5. 13.
def 함수 활용하는 방법 def 함수 활용 1. 축약할 때 def 인사() : print('Let me introduce myself my name is Jaeseungshot') print('I go to Edong elementary school I'm in 4th grade') 이렇게 입력하면 앞으로는 인사() 만 입력해도 Let me introduce myself my name is Jaeseungshot I go to Edong elementary school I'm in 4th grade 이렇게 출력되는 것을 확인할 수 있다. 아주 간편하게 축약할 수 있는 것이다. 2. 함수 만들 때 def 내년(현재년도) : print(현재년도 + 1) 이렇게 입력 후 내년(2022) 를 입력하면 2023이 출력되는 것을 확인할 수.. 2022. 5. 13.
pip upgrade 하는 법 여느 때와 같이 웹 스크롤러를 만들려고 pip install requests 를 터미널에 입력했다. 그러자 갑자기 이렇게 뜨는 warning 문구. 업그레이드를 하라는 말같다. 그럴 경우, python -m pip install --upgrade pip 이렇게 입력하면 이렇게 뜨면서 업그레이드가 정상적으로 된다! 2022. 5. 12.
웹에서 정보 뽑아먹기 - 웹 크롤러 만드는 법- 터미널 창에 pip install requests pip install bs4 하나씩 입력한다 그 후에 import requests from bs4 import BeautifulSoup 이렇게 코드를 입력해 놓으면 웹 크롤러 제작 기반 마련 성공이다. 굳이 설명하자면 import requests는 웹 사이트 접속 도와주는 라이브러리 개념이고 from bs4 import BeautifulSoup는 html 웹문서 분석 도와주는 라이브러리 개념이다 데이터 = requests.get('url') 데이터를 가져오고자 하는 url을 준비하고 저기에 입력한다. url의 정보를 데이터 안에 저장하는 것. print(데이터.status_code) 먼저 웹 페이지 접속이 원활하게 되고 있는지 확인하기 위해 위 코드를 입.. 2022. 5. 4.
구구단 이쁘게 출력하는 법 - end=" ", print('') for i in range(2, 10): for j in range(1, 10): print(i*j, end=" ") print('') end= " " 구구단이 다음 줄로 출력되는 것이 아니라 한 줄에 출력되게 해줌. 큰 따옴표 안에 띄어쓰기 없이하면 띄어쓰기 없이 출력됨 print('') 두 번째 for 문이 끝나면 결과값을 다음 줄부터 출력하게 해줌. 2022. 5. 4.
파이썬 문자열 만드는 법 4가지 + 따옴표 같이 출력하는 법 1. 큰따옴표 "hey, Break the matrix" 2. 작은 따옴표 'hey, Break the matrix' 3. 큰따옴표 3개를 연속 """hey, Break the matrix""" 4. 작은 따옴표 3개를 연속 '''hey, Break the matrix''' 예시) She said, "hey, Break the matrix" -> 이 문장 고대로 하고 싶지만 이대로 하면 큰따옴표가 생략되어 출력된다. 따라서 양옆에 작은 따옴표를 추가로 해야한다. 'She said, "hey, Break the matrix"' -> 성공! "She said, \"hey, Break the matrix\"" -> 성공! -> 백슬래시를 큰따옴표 혹은 작은 따옴표 앞에 삽입하면 그 뒤의 따옴표는 문자로 인식되.. 2022. 5. 1.
반응형