728x90
반응형

안녕하세요! 네이버 뉴스가 24년 1월 25일부터 페이지가 보여주는 방식이 변경되면서, 이전 포스팅에서 진행했던 첫 번째 코드를 사용할 수 없게 되었습니다.

 

그래서 변경된 페이지에서 적용되는 크롤링 코드를 새로 가지고 왔습니다!

※ 두 번째 코드는 동일하게 적용됩니다.

 

해당 포스팅에서는 전체 코드만 첨부합니다.

크롤링할 페이지의 설명, 크롤링 진행 방식, 이전 크롤링 코드가 궁금하신 분들은 아래 링크에서 확인하실 수 있습니다.

https://yhj9855.com/entry/Crawling-%EB%84%A4%EC%9D%B4%EB%B2%84-%EB%89%B4%EC%8A%A4-%ED%81%AC%EB%A1%A4%EB%A7%81-1

 

[Crawling] 네이버 뉴스 크롤링 - 1

안녕하세요. 크롤링에서 가장 첫 포스팅을 네이버 뉴스 크롤링으로 하게 되었어요. 아무래도 바쁜 일상 속에서 매일 뉴스 기사를 파악하는 부분이 시간적으로 힘들었는데, 크롤링하고 데이터

yhj9855.com

 

크롤링의 자세한 과정이 궁금하신 분들은 아래 링크를 봐주시면 됩니다!

 

첫 번째 코드의 자세한 과정은 다음 포스팅에서 진행하겠습니다.

 

<두 번째 코드의 자세한 과정>

https://yhj9855.com/entry/Crawling-%EB%84%A4%EC%9D%B4%EB%B2%84-%EB%89%B4%EC%8A%A4-%ED%81%AC%EB%A1%A4%EB%A7%81-3

 

[Crawling] 네이버 뉴스 크롤링 - 3

안녕하세요. 오늘은 기존에 작성한 네이버 뉴스 크롤링 코드에서 두 번째 코드의 자세한 크롤링 과정을 포스팅 하겠습니다. 네이버 뉴스 크롤링 전체 코드를 확인하고 싶으신 분들은 아래 링크

yhj9855.com


[첫 번째 코드]

전체 코드

import pandas as pd
from selenium import webdriver
import time
from selenium.webdriver.common.by import By
from openpyxl import *

# 2024.01.25 부터 변경된 네이버 기사를 새로 크롤링하기 위해 만든 코드

link = 'https://news.naver.com/main/list.naver?mode=LS2D&sid2=229&sid1=105&mid=shm&date='
# 스크랩 하고 싶은 날짜를 년도월일 나열
# 날짜를 쉽게 바꾸기 위해 date를 따로 선언
date = '20240205'

# 메인 링크는 링크에 날짜가 붙은 구조이기 때문에 이렇게 작성해준다.
main_link = link + date
# number: 기사의 수, title: 기사 제목, link: 기사 링크
Main_link = pd.DataFrame({'number' : [], 'title' : [], 'link' : []})

# 크롬드라이버 실행
driver = webdriver.Chrome('chromedriver.exe')
driver.get(main_link)
time.sleep(3)

# 기사 더보기 버튼
more_button = driver.find_element(By.CLASS_NAME, 'section_more_inner._CONTENT_LIST_LOAD_MORE_BUTTON')

# 기사 더보기가 몇 개가 있을지 모르기 때문에 오류가 날 때까지 누르는 것으로 한다.
# 여기서 발생하는 오류란 버튼을 찾을 수 없다 즉, 버튼이 없을 때 발생하는 오류
while True :
    try :
        more_button.click()
        time.sleep(3)
    except :
        break

# 기사들의 정보가 담겨져 있는 곳
articles = driver.find_elements(By.CLASS_NAME, 'sa_text_title')
for i in range(len(articles)) :
	# 각 기사의 제목과 링크를 추출
    title = articles[i].text.strip()
    link = articles[i].get_attribute('href')
    li = [i+1, title, link]
    Main_link.loc[i] = li

# 엑셀 파일이 헷갈리지 않기 위해 엑셀 이름에 날짜를 넣음
excel_name = 'news_' + date + '.xlsx'
with pd.ExcelWriter(excel_name) as writer :
    Main_link.to_excel(writer, sheet_name='링크', index=False)

[두 번째 코드]

전체 코드

from bs4 import BeautifulSoup
import requests
import pandas as pd
from openpyxl import *
import time
import urllib

# 첫 번째 코드에서 지정한 뉴스의 링크들이 담긴 파일
link = pd.read_excel('news_20231222.xlsx')
# 엑셀 파일이 헷갈리지 않게 최종 결과파일에도 날짜를 넣어줌
excel_name = 'news_detail_20231222.xlsx'
Main_link = list(link['link'])
# number: 기사의 수, title: 기사의 제목, information: 본문 내용, link: 기사의 링크
Information = pd.DataFrame({'number' : [], 'title' : [], 'information' : [], 'link' : []})
# 본문 내용만 추가하면 되기 때문에 데이터 프레임에 미리 나머지 내용을 담아줌
Information['number'] = link['number']
Information['title'] = link['title']
Information['link'] = link['link']
information = []

for main_link in Main_link :
	# 기사가 전체적으로 2개의 구조를 가지고 있음 (게임/리뷰 카테고리에 한하여)
    # 하나의 구조를 기준으로 삼고, 해당 부분에서 오류가 발생하면 다음 구조의 기사로 판단
    try :
        response = requests.get(main_link, headers={'User-Agent':'Moailla/5.0'})
        if response.status_code == 200 :
            html = response.content
            soup = BeautifulSoup(html, 'html.parser')
            # 기사의 본문 내용만 담고 있는 부분
            info = soup.find('div', {'id' : 'newsct_article'}).text.strip()
            # 기사 내용 데이터 분석을 위해서 줄바꿈을 띄어쓰기로 변경
            info = info.replace('\n', '')
            information.append(info)
    except :
    	# 다른 구조의 기사 크롤링 코드
        # 여기서 오류가 나는 경우는 게임/리뷰 기사가 아닌 다른 카테고리의 기사로 판단
        try :
            response = requests.get(main_link, headers={'User-Agent':'Moailla/5.0'})
            if response.status_code == 200 :
                html = response.content
                soup = BeautifulSoup(html, 'html.parser')
                # 기사의 본문 내용을 담고 있는 부분
                info = soup.find('div', {'id' : 'newsEndContents'}).text.strip()
                info = info.replace('\n', '')
                # 해당 구조의 기사는 기자의 정보가 본문과 무조건 같이 존재
                # 기자의 정보 부분은 필요가 없기 때문에 기자 정보의 기준점이 되는 부분을 찾음
                # 기자의 정보 기준이 기사제공이라는 단어이기 때문에 그 이후는 삭제
                end = info.index('기사제공')
                info = info[:end]
                information.append(info)
        # 다른 카테고리의 기사가 들어올 경우에는 정보를 담지 않는 것으로 함
        except Exception as e :
        	info = ''
            information.append(info)
            # 오류가 발생하는 이유와 발생하는 링크를 출력하여 오류를 확인하는 장치
            #print(e)
            #print(main_link)

Information['information'] = information

with pd.ExcelWriter(excel_name) as writer :
    Information.to_excel(writer, sheet_name='결과값', index=False)

 

뉴스 크롤링 데이터를 이용한 워드클라우드 포스팅은 아래에서 확인해주세요!

https://yhj9855.com/entry/%EB%8D%B0%EC%9D%B4%ED%84%B0-%EB%B6%84%EC%84%9D-%ED%95%9C%EA%B8%80%EB%A1%9C-%EC%9B%8C%EB%93%9C%ED%81%B4%EB%9D%BC%EC%9A%B0%EB%93%9C-%EB%A7%8C%EB%93%A4%EA%B8%B0-feat%EB%84%A4%EC%9D%B4%EB%B2%84-%EB%89%B4%EC%8A%A4-%ED%81%AC%EB%A1%A4%EB%A7%81

 

[데이터 분석] 한글로 워드클라우드 만들기 (feat.네이버 뉴스 크롤링)

안녕하세요. 오늘은 크롤링 데이터로 워드클라우드(wordcloud)를 만드는 방법에 대해 포스팅 하겠습니다. 크롤링 데이터는 네이버 뉴스 크롤링을 사용할 예정입니다! 네이버 뉴스 크롤링 과정이

yhj9855.com

 

뉴스 크롤링 데이터를 이용한 토픽모델링 포스팅은 아래세어 확인해주세요!

https://yhj9855.com/entry/%EB%8D%B0%EC%9D%B4%ED%84%B0-%EB%B6%84%EC%84%9D-%ED%95%9C%EA%B8%80-%EB%8D%B0%EC%9D%B4%ED%84%B0-%ED%86%A0%ED%94%BD-%EB%AA%A8%EB%8D%B8%EB%A7%81-%EC%A7%84%ED%96%89%ED%95%98%EA%B8%B0

 

[데이터 분석] 한글 데이터 토픽 모델링 진행하기

안녕하세요! 오늘은 한글 데이터로 토픽 모델링(topic modeling)을 하는 방법에 대해 포스팅 하겠습니다. 한글 데이터는 네이버 뉴스 크롤링 데이터를 사용할 예정입니다. 네이버 뉴스 크롤링 과정

yhj9855.com

코드에 대해 궁금한 부분이 있으신 분들은 댓글로 남겨주시면, 답변 드리도록 하겠습니다.

★읽어주셔서 감사합니다★

728x90
반응형
728x90
반응형

안녕하세요! 오늘은 프로그래머스 SQL 고득점 Kit 문제 중 SELECT 분야의 '3월에 태어난 여성 회원 목록 출력하기' 문제 리뷰를 진행하겠습니다.

 

문제는 아래 링크에서 확인해주시면 됩니다.

https://school.programmers.co.kr/learn/courses/30/lessons/131120

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

  • 문제 설명

  • 문제

  • 예시

  • 주의사항

 

  • 문제를 파악하여 쿼리 생각하기

예시에서 볼 수 있듯이, 저희가 문제에서 SELECT 해야하는 부분은 회원의

  1. ID : MEMBER_ID
  2. 이름 : MEMBER_NAME
  3. 전화번호 : TLNO
  4. 성별 : GENDER
  5. 생년월일 : DATE_OF_BIRTH

총 5개인 것을 확인할 수 있습니다.

 

다음으로 저희가 WHERE로 조건을 확인해야 하는 부분은

  1. 회원의 생일은 3월 : DATE_OF_BIRTH LIKE '%-03-%'
    → 생년월일이 '연도-월-일' 의 형태로 되어있기 때문에 월만 3월이면 되기 때문에 위와 같은 쿼리가 완성됩니다.
  2. 회원의 성별은 여성 : GENDER = 'W'
  3. 회원의 전화번호는 NULL이 아니여야 함 : TLNO IS NOT NULL

총 3개인 것을 확인할 수 있습니다.

 

마지막으로 저희가 문제에서 확인해야 하는 부분은

  1. 결과는 회원 ID를 기준으로 오름차순 : ORDER BY MEMBER_ID ASC
  2. DATE_OF_BIRTH는 예시와 동일한 데이터 포맷 : DATE_FORMAT(DATE_OF_BIRTH, '%Y-%m-%d)
    DATE_FORMAT 함수는 SQL에서 날짜 및 시간 값을 특정 형식의 문자열로 변환하는데 사용합니다.
    → 형식이 %Y-%m-%d인 이유는 M은 월의 영어 단어를 의미하고, D는 일 뒤에 영어 접미사(EX :1st, 2nd)가 붙기 때문에 숫자만 가져오고 싶을 경우, 소문자를 써야합니다.

총 2개인 것을 확인할 수 있습니다.

 

  • 쿼리 완성하기

이제 위에서 생각한 쿼리를 SQL의 실행순서에 맞게 배치해주면 됩니다.

그렇게 완성된 쿼리는 아래와 같습니다.

SELECT 
    MEMBER_ID, MEMBER_NAME, GENDER, DATE_FORMAT(DATE_OF_BIRTH, '%Y-%m-%d')
FROM 
    MEMBER_PROFILE
WHERE 
    DATE_OF_BIRTH LIKE '%-03-%' 
    AND TLNO IS NOT NULL 
    AND GENDER = 'W'
ORDER BY 
    MEMBER_ID ASC

 

궁금한 부분이 있으신 분들은 댓글로 남겨주시면, 답변 드리도록 하겠습니다.

★읽어주셔서 감사합니★

728x90
반응형
728x90
반응형

안녕하세요!

오늘은 원신 4.5 업데이트 모든 캐릭터 성유물 세팅 포스팅을 진행하겠습니다.

4.5 업데이트는 간단한 업데이트여서 호다닥 갖고 왔습니다.

 

캐릭터의 성유물 세팅은 엑셀 내 저장되어 있으며, 조회를 통해서 쉽게 보실 수 있습니다!

엑셀 파일을 조회하는 방법은 아래 포스팅을 참고 해주세요:)

https://yhj9855.tistory.com/entry/%EC%9B%90%EC%8B%A0-%EC%84%B1%EC%9C%A0%EB%AC%BC-%EC%84%B8%ED%8C%85-%EC%97%91%EC%85%80-%ED%8C%8C%EC%9D%BC-%EC%82%AC%EC%9A%A9%ED%95%98%EB%8A%94-%EB%B0%A9%EB%B2%95

 

[원신] 성유물 세팅 엑셀 파일 사용하는 방법

안녕하세요. 오늘은 제가 만든 원신 성유물 세팅이 담긴 엑셀 파일을 사용하는 방법에 대해서 포스팅 하겠습니다. 원신은 캐릭터마다 어울리는 성유물 세팅을 해주는 것이 거의 엔드 콘텐츠로

yhj9855.com

4.5업데이트 기준으로 치오리까지 캐릭터가 존재합니다!

성유물 세팅의 정보는 나무위키를 기반으로 하고 있습니다!

 

원신에서 가장 애매한 바위 원소 캐릭터가 등장했습니다...

생긴 건 정말 제 취향이지만.. 솔직히 성능이 좋지 않고

무엇보다 후반에 느비예트가 복각하기 때문에 뽑지는 않을 것 같네요ㅠㅠㅠ

 

궁금한 부분이 있으신 분들은 댓글로 남겨주시면, 답변 드리도록 하겠습니다.

엑셀 파일은 아래 파일 다운 받아주시면 됩니다!!

원신(4.5업데이트 기준).xlsx
0.13MB

★읽어주셔서 감사합니다★

728x90
반응형
728x90
반응형

안녕하세요!

오늘은 한국어 데이터 분석을 위해 꼭 필요한 Konlpy(코엔엘파이) 라이브러리에 대해서 포스팅 하겠습니다.

 

  • Konlpy 란?

한국어 자연어 처리를 위한 파이썬 라이브러리 입니다.

 

  • Konlpy의 특징

Konlpy은 다양한 한국어 형태소 분석기를 지원하기 때문에 같은 문장을 다른 방식으로 분석을 하는 것이 가능합니다.

※ Konlpy는 설치 및 사용 환경을 설정하는 과정이 조금 복잡하기 때문에 따로 포스팅을 진행하도록 하겠습니다!

 

  • Konlpy이 제공하는 형태소 분석기 종류

Konlpy은 아래 5가지 형태소 분석기를 제공합니다.

  1. Kkma
  2. Komoran
  3. Hannaum
  4. Okt (구 Twittrer)
  5. Mecab: 일본어 형태소 분석기를 한국어로 변경한 분석기로, 세종 말뭉치로 만들어진 CSV 형태의 사전 (Windows에서 잘 지원이 되지 않음)

Mecab은 Windows에서 잘 지원이 되지 않기 때문에 나머지 4개의 형태소 분석기만 비교를 해보도록 하겠습니다!

 

  • Kkma

서울대 지능형 데이터 시스템 연구실에서 개발한 형태소 분석기 입니다.

비교적 정확한 품사를 구분하는 형태소 분석기로 띄어쓰기 오류에 강하고, 다의어 처리에 효과적이지만, 단어의 수가 증가할수록 분석을 진행하는 시간이 가장 크게 느려지는게 특징입니다.

Kkma는 4가지의 함수를 제공합니다.

아래는 4가지 함수와 코드 예시입니다.

from konlpy.tag import Kkma

kkma = Kkma()
text = "꼬꼬마 형태소 분석기를 사용해 봅시다."

 

  • morphs: 문장을 형태소 단위로 추출
morphs_result = kkma.morphs(text)

Output: ['꼬꼬마', '형태소', '분석', '기', '를', '사용', '하', '어', '보', 'ㅂ시다', '.']

 

  • nouns: 문장을 명사 단위로 추출
nouns_result = kkma.nouns(text)

Output: ['꼬꼬마', '형태소', '분석', '분석기']

 

  • pos: 문장을 형태소 단위로 추출, 각 형태소의 품사와 함께 반환
pos_result = kkma.pos(text)

Output: [('꼬꼬마', 'NNG'), ('형태소', 'NNG'), ('분석', 'NNG'), ('기', 'NNG'), ('를', 'JKO'), ('사용', 'NNG'), ('하', 'XSV'), ('어', 'ECS'), ('보', 'VXV'), ('ㅂ시다', 'EFN'), ('.', 'SF')]

 

  • sentences : 여러 문장으로 이루어진 텍스트를 문장 단위로 추출
text = "꼬꼬마 형태소 분석기를 사용해 봅시다. 이것은 간단한 예시입니다."
sentences_result = kkma.sentences(text)

Output: ['꼬꼬마 형태소 분석기를 사용해 봅시다.', '이것은 간단한 예시입니다.']

 

 

  • Komoran

Shineware에서 개발한 형태소 분석기 입니다.

대용량 말뭉치를 학습하여 품사 태깅에 높은 정확도를 보이며, 빠른 분석 속도높은 성능을 보유하고 있습니다.

Komoran은 3가지의 함수를 제공합니다.

아래는 3가지 함수와 코드 예시입니다.

from konlpy.tag import Komoran

komoran = Komoran()
text = "코모란 형태소 분석기를 사용해 봅시다."

 

  • morphs: 문장을 형태소 단위로 추출
morphs_result = komoran.morphs(text)

Output: ['코모란', '형태소', '분석', '기', '를', '사용', '하', '아', '보', 'ㅂ시다', '.']

 

  • nouns: 문장을 명사 단위로 추출
nouns_result = komoran.nouns(text)

Output: ['코모란', '형태소', '분석', '기']

 

  • pos: 문장을 형태소 단위로 추출, 각 형태소의 품사와 함께 반환
pos_result = komoran.pos(text)

Output: [('코모란', 'NNP'), ('형태소', 'NNG'), ('분석', 'NNG'), ('기', 'NNG'), ('를', 'JKO'), ('사용', 'NNG'), ('하', 'XSV'), ('아', 'EC'), ('보', 'VX'), ('ㅂ시다', 'EF'), ('.', 'SF')]

 

  • Hannaum

국립 국어원에서 개발한 형태소 분석기 입니다.

복합 명사를 적절하게 처리하고, 복잡한 구조의 문장에서도 안정적으로 형태소 분석을 수행합니다.

Hannaum은 3가지의 함수를 제공합니다.

아래는 3가지 함수와 코드 예시입니다.

from konlpy.tag import Hannanum

hannanum = Hannanum()
text = "한나눔 형태소 분석기를 사용해 봅시다."

 

  • morphs: 문장을 형태소 단위로 추출
morphs_result = hannanum.morphs(text)

Output: ['한나눔', '형태소', '분석', '기', '를', '사용', '하', '어', '보', 'ㅂ시다', '.']

 

  • nouns: 문장을 명사 단위로 추출
nouns_result = hannanum.nouns(text)

Output: ['한나눔', '형태소', '분석', '기']

 

  • pos: 문장을 형태소 단위로 추출, 각 형태소의 품사와 함께 반환
pos_result = hannanum.pos(text)

Output: [('한나눔', 'N'), ('형태소', 'N'), ('분석', 'N'), ('기', 'N'), ('를', 'J'), ('사용', 'N'), ('하', 'X'), ('어', 'E'), ('보', 'P'), ('ㅂ시다', 'E'), ('.', 'S')]

 

 

  • Okt

Twitter에서 개발한 형태소 분석기 입니다.

복합 명사 분석에 우수하며, 속도가 빠르고 경량화된 형태로 제공되어 다양한 환경에서 사용할 수 있습니다.

Okt는 4가지의 함수를 제공합니다.

아래는 4가지 함수와 코드 예시입니다.

from konlpy.tag import Okt

okt = Okt()
text = "Okt 형태소 분석기를 사용해 봅시다."

 

  • morphs: 문장을 형태소 단위로 추출
morphs_result = okt.morphs(text)

Output: ['Okt', '형태소', '분석기', '를', '사용', '해', '봅시다', '.']

 

  • nouns: 문장을 명사 단위로 추출
nouns_result = okt.nouns(text)

Output: ['Okt', '형태소', '분석기']

 

  • pos: 문장을 형태소 단위로 추출, 각 형태소의 품사와 함께 반환
pos_result = okt.pos(text)

Output: [('Okt', 'Alpha'), ('형태소', 'Noun'), ('분석기', 'Noun'), ('를', 'Josa'), ('사용', 'Noun'), ('해', 'Verb'), ('봅시다', 'Verb'), ('.', 'Punctuation')]

 

  • phrases: 문장을 어구 단위로 추출
phrases_result = okt.phrases(text)

Output: ['Okt', 'Okt 형태소', '형태소', '분석기', '사용', 'Okt 형태소 분석기', '분석']

 

Konlpy를 활용하여 한국어 데이터 기반 워드 클라우드, 토픽 모델링 데이터 분석을 진행한 예시는 아래 페이지에서 확인하실 수 있습니다!

https://yhj9855.com/entry/%EB%8D%B0%EC%9D%B4%ED%84%B0-%EB%B6%84%EC%84%9D-%ED%95%9C%EA%B8%80%EB%A1%9C-%EC%9B%8C%EB%93%9C%ED%81%B4%EB%9D%BC%EC%9A%B0%EB%93%9C-%EB%A7%8C%EB%93%A4%EA%B8%B0-feat%EB%84%A4%EC%9D%B4%EB%B2%84-%EB%89%B4%EC%8A%A4-%ED%81%AC%EB%A1%A4%EB%A7%81

 

[데이터 분석] 한글로 워드클라우드 만들기 (feat.네이버 뉴스 크롤링)

안녕하세요. 오늘은 크롤링 데이터로 워드클라우드(wordcloud)를 만드는 방법에 대해 포스팅 하겠습니다. 크롤링 데이터는 네이버 뉴스 크롤링을 사용할 예정입니다! 네이버 뉴스 크롤링 과정이

yhj9855.com

 

https://yhj9855.com/entry/%EB%8D%B0%EC%9D%B4%ED%84%B0-%EB%B6%84%EC%84%9D-%ED%95%9C%EA%B8%80-%EB%8D%B0%EC%9D%B4%ED%84%B0-%ED%86%A0%ED%94%BD-%EB%AA%A8%EB%8D%B8%EB%A7%81-%EC%A7%84%ED%96%89%ED%95%98%EA%B8%B0

 

[데이터 분석] 한글 데이터 토픽 모델링 진행하기

안녕하세요! 오늘은 한글 데이터로 토픽 모델링(topic modeling)을 하는 방법에 대해 포스팅 하겠습니다. 한글 데이터는 네이버 뉴스 크롤링 데이터를 사용할 예정입니다. 네이버 뉴스 크롤링 과정

yhj9855.com

 

궁금한 부분이 있으신 분들은 댓글로 남겨주시면, 답변 드리도록 하겠습니다!

★읽어주셔서 감사합니★

728x90
반응형
728x90
반응형

안녕하세요!

오늘은 원신 4.4 업데이트 모든 캐릭터 성유물 세팅 포스팅을 진행하겠습니다.

4.4로 업데이트 된지 조금...많이? 날짜가 지났는데 계속 바빠서 정리를 못했네요ㅠㅠㅠ

 

캐릭터의 성유물 세팅은 엑셀 내 저장되어 있으며, 조회를 통해서 쉽게 보실 수 있습니다!

엑셀 파일을 조회하는 방법은 아래 포스팅을 참고 해주세요:)

https://yhj9855.tistory.com/entry/%EC%9B%90%EC%8B%A0-%EC%84%B1%EC%9C%A0%EB%AC%BC-%EC%84%B8%ED%8C%85-%EC%97%91%EC%85%80-%ED%8C%8C%EC%9D%BC-%EC%82%AC%EC%9A%A9%ED%95%98%EB%8A%94-%EB%B0%A9%EB%B2%95

 

[원신] 성유물 세팅 엑셀 파일 사용하는 방법

안녕하세요. 오늘은 제가 만든 원신 성유물 세팅이 담긴 엑셀 파일을 사용하는 방법에 대해서 포스팅 하겠습니다. 원신은 캐릭터마다 어울리는 성유물 세팅을 해주는 것이 거의 엔드 콘텐츠로

yhj9855.com

4.4업데이트 기준으로 가명, 한운까지 캐릭터가 존재합니다.

성유물 세팅의 정보는 나무위키를 기반으로 하고 있습니다!

 

제가 필드 파티는 덱 압축을 잘하지 않는 편이라서 그런지 그렇게 크게 다가오지는 않았네요ㅠㅠ

오히려 복각한 캐릭터에 더 집중했던 것 같습니다...

그래도 낙하 공격이 정말 좋기 때문에 바람 원소에 적절한 캐릭터가 없으면 뽑으시는 것도 좋을 것 같네요:)

 

궁금한 부분이 있으신 분들은 댓글로 남겨주시면, 답변 드리도록 하겠습니다.

엑셀 파일은 아래 파일 다운 받아주시면 됩니다!!

원신(4.4업데이트 기준).xlsx
0.13MB

 

★읽어주셔서 감사합니다★

728x90
반응형
728x90
반응형

안녕하세요!

오늘은 붕괴 스타레일 2.0 업데이트 모든 캐릭터 유물 및 차원 장신구 세팅 포스팅을 진행하겠습니다.

 

캐릭터의 유물, 차원 장신구 세팅은 엑셀 내 저장되어 있으며, 조회를 통해서 쉽게 보실 수 있습니다!

엑셀 파일을 조회하는 방법은 아래 포스팅을 참고해주세요:)

https://yhj9855.com/entry/%EB%B6%95%EA%B4%B4-%EC%8A%A4%ED%83%80%EB%A0%88%EC%9D%BC-%EC%9C%A0%EB%AC%BC-%EC%B0%A8%EC%9B%90-%EC%9E%A5%EC%8B%A0%EA%B5%AC-%EC%84%B8%ED%8C%85-%EC%97%91%EC%85%80-%ED%8C%8C%EC%9D%BC-%EC%82%AC%EC%9A%A9%ED%95%98%EB%8A%94-%EB%B0%A9%EB%B2%95

 

[붕괴 스타레일] 유물, 차원 장신구 세팅 엑셀 파일 사용하는 방법

안녕하세요. 오늘은 제가 만든 스타레일 유물, 차원 장신구 세팅이 담긴 엑셀 파일을 사용하는 방법에 대해서 포스팅 하겠습니다. 스타레일도 원신과 비슷하게 유물과 차원 장신구를 세팅해주

yhj9855.com

2.0 업데이트 기준으로 스파클까지 캐릭터가 존재합니다.

유물 및 차원 장신구 세팅의 정보는 나무위키를 기반으로 하고 있습니다!

 

이번 스파클이 스킬 포인트 최대량 증가 및 스킬 포인트 회복이라는 엄청난 스킬을 가지고 있어서 필수 캐릭터로 자리 잡았는데요.

그만큼 몸이 너무 약해서 금방 죽는 단점이 있습니다ㅠㅠ

저도 아직 키우고 있는 중인데 효율이 너무 좋아서 당분간 스파클+a 로 조합을 꾸릴 것 같네여:D

 

궁금한 부분이 있으신 분들은 댓글로 남겨주시면, 답변 드리도록 하겠습니다.

엑셀 파일은 아래 파일 다운 받아주시면 됩니다!!

스타레일(2.0업데이트 기준).xlsx
0.08MB

★읽어주셔서 감사합니다★

728x90
반응형
728x90
반응형

안녕하세요! 요즘 너무 바빠서 자주 글을 올리지 못하고 있네요ㅠㅠ

오늘은 동적 크롤링에 꼭 필요한 크롬드라이버(ChromeDriver)를 설치하는 방법에 대해서 포스팅 하겠습니다.

 

  • 크롬드라이버란?

컴퓨터가 크롬 브라우저를 제어할 수 있도록 해주는 프로그램입니다.

 

  • 크롬드라이버의 사용처

크롬드라이버는 컴퓨터 코드크롬 브라우저에서 특정 행동을 하고 싶을 때 사용합니다.

※ 특정 행동은 스크롤을 내리거나, 버튼을 누르는 등의 행동을 예시로 들 수 있습니다.

크롬 브라우저를 직접 제어할 수 있기 때문에 URL이 변경되지 않는데 내용은 변경이 되는 동적 페이지 크롤링에 필수로 사용됩니다.

 

  • 크롬드라이버 설치하기

크롬드라이버는 크롬 버전과 버전이 맞지 않으면 코드에서 오류가 발생하기 때문에 꼭 동일한 버전의 크롬드라이버를 설치하는 것이 중요합니다.

크롬드라이버를 사용하는 selenium 패키지가 업데이트 되면서 크롬드라이버를 새롭게 설치할 필요가 없다고들 하는데, 저는 자꾸 오류가 발생해서 번거롭지만 버전에 맞는 크롬드라이버를 매번 다시 설치해주고 있습니다ㅠㅠ

크롬드라이버를 설치하는 과정은 아래와 같습니다.

 

 

최근 크롬 드라이버 메인 홈페이지가 변경되어서 새로 변경된 홈페이지에서 크롬 드라이버 다운 받은 게시글을 새로 작성해주었습니다!!
본인 크롬이 최신 버전이 아닐 경우, 검색해서 다운 받는 과정까지 함께 포스팅하였으니 아래 링크에서 확인해주세요!

https://yhj9855.com/entry/%ED%81%AC%EB%A1%AC%EB%93%9C%EB%9D%BC%EC%9D%B4%EB%B2%84-%EC%84%A4%EC%B9%98%ED%95%98%EA%B8%B0-%EC%B5%9C%EC%8B%A0%EB%B2%84%EC%A0%84%EA%B3%BC-%EB%8B%A4%EB%A5%B8-%ED%81%AC%EB%A1%AC%EB%93%9C%EB%9D%BC%EC%9D%B4%EB%B2%84-%EC%84%A4%EC%B9%98

 

크롬드라이버 설치하기 (최신버전과 다른 크롬드라이버 설치)

안녕하세요!최근에 크롬 드라이버를 설치하는 페이지가 변경되어 새롭게 포스팅을 하겠습니다! 이전 포스팅이 궁금하신 분들은 아래 포스팅을 참고해주시면 됩니다!https://yhj9855.com/entry/%ED%81%AC

yhj9855.com

 

 

1. 크롬을 최신 버전으로 업데이트 해줍니다.

최신 버전의 크롬이 가장 오류가 나지 않기 때문에 크롬드라이버를 설치하기 전에 크롬을 꼭 최신 버전으로 업데이트 해주세요!

 

2. 크롬의 버전을 확인합니다.

'제어' → '도움말' → 'Chrome 정보' 에서 크롬 버전을 확인할 수 있습니다.

여기서 제어는 크롬 내 X(창닫기 버튼) 아래에 있는 세로로 된 ... 을 의미합니다.

 

3. https://chromedriver.chromium.org/downloads 홈페이지에 접속합니다.

 

ChromeDriver - WebDriver for Chrome - Downloads

Current Releases If you are using Chrome version 115 or newer, please consult the Chrome for Testing availability dashboard. This page provides convenient JSON endpoints for specific ChromeDriver version downloading. For older versions of Chrome, please se

chromedriver.chromium.org

구글에서 크롬드라이버를 검색했을 때, 가장 상단에 보이는 홈페이지와 동일한 홈페이지입니다!

 

4. 아래 이미지에 해당하는 부분을 클릭해줍니다.

현재 사용하시는 크롬은 무조건 115버전 보다 상위 버전이기 때문에 해당 부분을 클릭하여 최신 버전 다운로드 페이지로 이동해줍니다.

 

5. 'Stable' 에서 자신에게 맞는 OS를 선택하여 다운로드를 받아줍니다.

다운로드는 URL을 복사하여 크롬 주소창에 입력해주면 자동으로 다운로드 진행이 됩니다.

자신에게 맞는 OS는 컴퓨터 내 '설정'  → '시스템'  → '시스템 종류'에서 확인 하실 수 있습니다!

 

6. 설치 완료된 크롬드라이버 zip 파일에서 'chromedriver.exe' 파일만 복사하여, 코드가 있는 폴더에 옮겨줍니다.

같은 폴더에 있지 않으면, 코드가 인식하지 못하는 경우가 있어서 옮겨주는 것이 좋습니다.

 

이 과정을 통해서 최신 버전의 크롬드라이버를 설치할 수 있습니다!

크롬드라이버를 사용하여 동적 크롤링을 진행하는 포스팅은 다음에 진행하도록 하겠습니다.

 

궁금한 부분이 있으신 분들은 댓글로 남겨주시면, 답변 드리도록 하겠습니다.

★읽어주셔서 감사합니★

728x90
반응형
728x90
반응형

안녕하세요! 오늘은 데이터 분석에서 자주 활용하는 주피터 노트북(Jupyter Notebook) 을 사용하는 방법에 대해서 포스팅 하겠습니다.

 

  • 주피터 노트북이란?

대화형 컴퓨팅 환경을 제공하는 오픈 소스 웹 기반 플랫폼입니다.

 

  • 주피터 노트북의 장점

1. 주피터 노트북은 대화형 인터페이스를 제공하고 있기 때문에 결과를 즉시 확인할 수 있습니다.

※ 사진 속 예시는 제가 작성한 웹툰 데이터 분석 코드의 일부입니다.

 

2. 주피터 노트북은 시각화 및 그래프를 지원하고 있기 때문에 노트북에 바로 결과가 표시되어 시각적으로 확인하기 쉽습니다.

※ 사진 속 예시는 제가 작성한 웹툰 데이터 분석 코드의 일부입니다.

 

3. 주피터 노트북은 다른 사용자와 공유하기 쉽습니다.

 기본적인 파일 형태인 ipynb는 GitHub 등의 협업 플랫폼에서 공유가 가능하기 때문에 협업하기 어렵지 않습니다.

또한 HTML 파일로 내보내기가 가능하기 때문에 결과물과 함께 공유가 가능하며, HTML 파일이기 때문에 다른 사용자가 열어보기 쉽습니다.

 

 

  • 주피터 노트북의 사용처

주피터 노트북은 데이터 분석 라이브러리를 모두 사용할 수 있고, 분석 후 시각화 작업이 수월하기 때문에 데이터 분석에서 많이 활용되고 있습니다.

또한 머신 러닝, 딥러닝 모델 학습이 가능하기 때문에 해당 분야에서도 자주 활용하고 있습니다.

 

  • 주피터 노트북 설치 및 실행하기

파이썬이 설치되신 분들은 아주 쉽게 주피터 노트북을 설치할 수 있습니다!

설치 및 실행 과정은 아래와 같습니다.

 

1. cmd 창을 여신 후에 pip install jupyter notebook 을 실행해주시면 됩니다.

※ cmd 창은 윈도우 검색에서 cmd라고 검색하시면 나오는 명령 프롬포트를 의미합니다.

 

2. 주피터 노트북을 실행하고자 하는 폴더로 이동합니다.

주피터 노트북은 같은 폴더에 함께 있는 파일만 인식하는 경우가 많기 때문에 폴더를 잘 선택해야 합니다.

 

3. 폴더의 빈 공간에 Shift+마우스 우클릭을 실행한 후, Power Shell 창을 열어줍니다.

※ 높은 버전의 Window에서는 '더 많은 옵션 표시'를 누르면 Power Shell 창 열기 버튼이 나타납니다.

4. Power Shell 창에 jupyter notebook 을 입력 후 실행해주시면 됩니다.

cmd에서 바로 실행하는 경우도 있는데, cmd보다 Power Shell의 기능이 더 강력하고 확장성이 뛰어나기 때문에 Power Shell로 실행하시는 것을 추천합니다!

 

5. 자동으로 주피터 노트북과 연결된 인터넷 창이 뜨면 실행 완료입니다!

만약 자동으로 연결된 인터넷 창이 뜨지 않는다면, Power Shell 창에 나와있는 인터넷 주소를 복사하여 입력하시면 됩니다.

 

 

  • 주피터 노트북에 코드 작성하기

이제 주피터 노트북을 실행하였으니, 코드를 작성해보도록 하겠습니다.

저는 보통 Python(파이썬) 코딩을 진행합니다만, R과 같이 다른 프로그래밍 언어도 사용가능합니다!

하지만 이 글에서는 파이썬 코드를 작성하는 법만 다루도록 하겠습니다.

주피터 노트북에서 파이썬 코드를 작성하는 방법은 아래와 같습니다.

 

1. 'New' 버튼을 클릭하여 파이썬 코드를 작성할 파일을 생성한다.

파일의 이름은 기본적으로 Untitled으로 생성되기 때문에 파일의 이름은 변경해주셔야 합니다.

※ Untitled을 더블 클릭하면 이름을 바로 변경할 수 있습니다.

2. 코드 셀에 원하는 코드를 작성해줍니다.

주피터 노트북은 기본적으로 코드를 실행하는 코드 셀을 제공해주고 있기 때문에 코드를 바로 작성해주시면 됩니다!

만약 코드가 아닌 일반 텍스트로 작성하고 싶은 경우에는 'm' 단축키를 누르거나, 상단의 'Code'를 'Markdown'으로 변경하여 코드 셀을 텍스트 셀로 변환해주시면 됩니다.

 

3. 코드가 작성 완료된 셀을 실행시켜줍니다.

코드 셀을 실행하는 방법은 총 3가지 방법이 있습니다.

  1. Ctrl+Enter: 현재의 코드 셀만 실행을 하고, 새로운 코드 셀을 추가하지 않습니다.
  2. 주피터 노트북의 실행 키를 누르는 방법: 현재의 코드 셀만 실행을 하고, 새로운 코드 셀을 추가합니다.
    ※ ▶Run 버튼이 실행 키 입니다.
  3. Shift+Enter: 현재의 코드 셀만 실행을 하고, 새로운 코드 셀을 추가합니다.

▶▶ 이렇게 생긴 버튼을 누르게 되면 처음 코드 셀부터 마지막 코드 셀까지 순차적으로 실행이 됩니다.

실행된 순서는 In [ ]에서 [ ] 안의 숫자로 확인할 수 있고, 굳이 순서대로가 아닌 제가 원하는 셀만 실행시킬 수 있기 때문에 실행 순서를 잘 이용하면 코드를 효율적으로 작성할 수 있습니다!

 

4. 완성된 코드 저장합니다.

주피터 노트북에 코드를 모두 작성했다면, Ctrl+s 단축키를 사용하여 저장해주면 됩니다.

주피터 노트북은 어느 정도 실시간 저장이 보장되지만, 저장하는 습관 길러두시는 편이 좋습니다!

저장된 파일은 .ipynb 라는 확장자를 가지는데요.

더블 클릭으로 여는 것은 조금 어렵고, 주피터 노트북에서 열어보시거나 Github에 올려서 확인하실 수 있습니다!

 

주피터 노트북은 활용을 잘하면 정말 유용한 코드 플랫폼이기 때문에 사용법을 익혀두시는 걸 정말 추천드립니다!

 

제가 주피터 노트북을 활용하여 워드 클라우드, 토픽 모델링 데이터 분석을 진행한 예시는 아래 페이지에서 확인하실 수 있습니다!

https://yhj9855.com/entry/%EB%8D%B0%EC%9D%B4%ED%84%B0-%EB%B6%84%EC%84%9D-%ED%95%9C%EA%B8%80%EB%A1%9C-%EC%9B%8C%EB%93%9C%ED%81%B4%EB%9D%BC%EC%9A%B0%EB%93%9C-%EB%A7%8C%EB%93%A4%EA%B8%B0-feat%EB%84%A4%EC%9D%B4%EB%B2%84-%EB%89%B4%EC%8A%A4-%ED%81%AC%EB%A1%A4%EB%A7%81

 

[데이터 분석] 한글로 워드클라우드 만들기 (feat.네이버 뉴스 크롤링)

안녕하세요. 오늘은 크롤링 데이터로 워드클라우드(wordcloud)를 만드는 방법에 대해 포스팅 하겠습니다. 크롤링 데이터는 네이버 뉴스 크롤링을 사용할 예정입니다! 네이버 뉴스 크롤링 과정이

yhj9855.com

https://yhj9855.com/entry/%EB%8D%B0%EC%9D%B4%ED%84%B0-%EB%B6%84%EC%84%9D-%ED%95%9C%EA%B8%80-%EB%8D%B0%EC%9D%B4%ED%84%B0-%ED%86%A0%ED%94%BD-%EB%AA%A8%EB%8D%B8%EB%A7%81-%EC%A7%84%ED%96%89%ED%95%98%EA%B8%B0

 

[데이터 분석] 한글 데이터 토픽 모델링 진행하기

안녕하세요! 오늘은 한글 데이터로 토픽 모델링(topic modeling)을 하는 방법에 대해 포스팅 하겠습니다. 한글 데이터는 네이버 뉴스 크롤링 데이터를 사용할 예정입니다. 네이버 뉴스 크롤링 과정

yhj9855.com

 

궁금한 부분이 있으신 분들은 댓글로 남겨주시면, 답변 드리도록 하겠습니다.

★읽어주셔서 감사합니다★

 

728x90
반응형
728x90
반응형

안녕하세요. 오늘은 호요버스의 턴제 게임 붕괴 스타레일의 모든 캐릭터 유물 및 차원 장신구 세팅 포스팅을 진행하겠습니다.

 

캐릭터의 유물, 차원 장신구 세팅은 엑셀 내 저장되어 있으며, 조회를 통해서 쉽게 보실 수 있습니다!

엑셀 파일을 조회하는 방법은 아래 포스팅을 참고해주세요:)

https://yhj9855.tistory.com/entry/%EB%B6%95%EA%B4%B4-%EC%8A%A4%ED%83%80%EB%A0%88%EC%9D%BC-%EC%9C%A0%EB%AC%BC-%EC%B0%A8%EC%9B%90-%EC%9E%A5%EC%8B%A0%EA%B5%AC-%EC%84%B8%ED%8C%85-%EC%97%91%EC%85%80-%ED%8C%8C%EC%9D%BC-%EC%82%AC%EC%9A%A9%ED%95%98%EB%8A%94-%EB%B0%A9%EB%B2%95

 

[붕괴 스타레일] 유물, 차원 장신구 세팅 엑셀 파일 사용하는 방법

안녕하세요. 오늘은 제가 만든 스타레일 유물, 차원 장신구 세팅이 담긴 엑셀 파일을 사용하는 방법에 대해서 포스팅 하겠습니다. 스타레일도 원신과 비슷하게 유물과 차원 장신구를 세팅해주

yhj9855.com

 

1.6 업데이트 기준으로 Dr.레이시오까지 캐릭터가 존재합니다.

유물 및 차원 장신구 세팅의 정보는 나무위키를 기반으로 하고 있습니다!

 

궁금한 부분이 있으신 분들은 댓글로 남겨주시면, 답변 드리도록 하겠습니다.

엑셀 파일은 아래 파일은 다운 받아 주시면 됩니다!!

스타레일(1.6업데이트 기준).xlsx
0.07MB

★읽어주셔서 감사합니다★

728x90
반응형
728x90
반응형

안녕하세요. 오늘은 제가 만든 스타레일 유물, 차원 장신구 세팅이 담긴 엑셀 파일을 사용하는 방법에 대해서 포스팅 하겠습니다.

 

스타레일도 원신과 비슷하게 유물과 차원 장신구를 세팅해주는 것이 중요한 게임인데요.

원신에 비해 적기는 하지만 스타레일도 캐릭터 세팅을 할 때마다 나무위키에서 찾아보는게 너무 귀찮더라구요...

그래서 나무위키 크롤링을 진행하요, 캐릭터마다 필요한 유물, 차원 장신구 세팅을 엑셀 파일로 한 번에 보기 좋게 만들었습니다!!

저는 개인적으로 너무 편하게 쓰고 있어요:)

엑셀 내 표기되는 정보

  1. 바디, 신발, 차원 구체, 연결 매듭 권장 유물 및 차원 장신구 옵션과 추천 부옵션
  2. 추천 유물, 차원 장신구 세트
  3. 유물, 차원 장신구 획득처 (침식된 터널, 시뮬레이션 우주 이름)
  4. 각 추천 유물, 차원 장신구 세트 효과 및 상세 설명

엑셀 파일 사용 방법

1. 다운받은 엑셀 파일을 실행합니다.

2. '스타레일 조회' 시트에서 '속성 선택' 아래 빈 칸을 클릭합니다.

3. 클릭 시 등장하는 ▼ 버튼을 클릭합니다.

4. 원하는 캐릭터의 속성을 클릭합니다.

5. '캐릭터 이름' 아래 빈 칸을 클릭합니다.

6. 클릭 시 등장하는 ▼ 버튼을 클릭합니다.

7. 원하는 캐릭터 이름을 클랙합니다.

    ※ 캐릭터의 이름은 속성에 맞게 선택지가 존재합니다.

8. '스타레일 조회' 시트와 '유물 상세' 시트에 자동으로 데이터가 나타나게 됩니다.

 

엑셀 파일은 지속적으로 캐릭터를 추가해줘야 하기 때문에 캐릭터가 추가되는 업데이트마다 포스팅을 진행하면서 첨부할 예정입니다.

만드는 과정은 차차 포스팅 진행하도록 하겠습니다!

궁금한 부분이 있으시거나, 추가로 원하시는게 더 있으신 분들은 댓글로 남겨주시면 답변 드리도록 하겠습니다:)

★읽어주셔서 감사합니다★

728x90
반응형

+ Recent posts