인프런 커뮤니티 질문&답변
현재값이 문자열로 출력
작성
·
237
0
안녕하세요,
강의해주신 방법대로 엑셀로 값을 저장하고 난 후에 엑셀에서 확인하면 값이 문자열로 저장되길래 숫자열로 바꾸는 방법을 검색해서 적용해보았습니다.
적용한 김에 3자리수마다 콤마를 표시하는 방법을 사용하고 싶어서 넣었는데,
영상에서 쓴 대로 넣어도 문자열이었고, 이렇게 바꿨는데도 불구하고 엑셀로 가보면 문자열로 출력이 되어서 하나하나 바꿔야 하더라구요.
혹시 현재값이 문자열로 출력되는 이유가 무엇일까요??
이렇게 바꿨는데도 문자열로 나오는 이유는 무엇인가요?
worksheet[f'E{row}'] = format(int(diff), ',')
답변 1
0
스타트코딩
지식공유자
안녕하세요~!
코딩을 누구보다 쉽게 알려주는 스타트코딩입니다.
영상의 코드를 그대로 따라 입력했는데 문자열로 입력된다는 말씀인가요?
제가 방금 직접 실행하고 난 뒤의 엑셀 파일입니다~
import requests
from bs4 import BeautifulSoup
import openpyxl
fpath = r'C:\startcoding_crawling\01_네이버_주식현재가_크롤링\data.xlsx'
wb = openpyxl.load_workbook(fpath)
ws = wb.active # 현재 활성화된 시트 선택
# 종목 코드 리스트
codes = [
'005930',
'000660',
'035720'
]
row = 2
for code in codes:
url = f"https://finance.naver.com/item/sise.naver?code={code}"
response = requests.get(url)
html = response.text
soup = BeautifulSoup(html, 'html.parser')
price = soup.select_one("#_nowVal").text
price = price.replace(',', '')
print(price)
ws[f'B{row}'] = int(price)
row = row + 1
wb.save(fpath)
소스코드 입니다.
소스코드 대로 따라해서 실행해 보시고, 결과를 알려주세요 :)
어떻게 문자열로 출력되는지도 스크린샷 찍어 주세요.
감사합니다.
- 스타트코딩 드림.





