파이썬 크롤링 한번에 처리하는법을 모르겠어요 ( 크롤링 데이터를 Pandas 이용해서 그래프로 만들고 싶어요)

조회수 574회

안녕하세요 제가 최근에 파이썬은 공부하면서 프로그램을 만들고 있는데요.

프로그램은 네이버 증권에 있는 데이터를 크롤링 해서 제가 원하는 값으로 가공을 해서 output을 보여주는 프로그램입니다.

아무래도 여러 번 다른 종목의 데이터를 가져와야 하니까 한 URL을 사용할 수 없어서 Input으로 URL을 계속 수정하면서 프로그램을 돌리고 있습니다. 근데 이걸 하다 보니까 한 번에 증권사 코드를 입력해서 내가 원하는 값을 한 번에 뽑을 수는 없는지 궁금해서요

URL은 마지막 증권 코드만 바꾸면 제가 원하는 종목으로 바로 넘어가는 형식이라서 쉽게 종목을 바꿀 수 있어요

코드를 미리 입력해서 프로그램이 자동으로 반복해서 돌아가면서 제가 크롤링 하고 싶은 여러 종목의 데이터를 가져오고 저장할 수 있나요?

가능하면 크롤링한 여러 데이터를 저장해서 PANDAS를 이용해서 그래프로 만들고 싶어요 (크롤링 데이터 프레임화 하는 방법이 필요해요)

import requests

from bs4 import BeautifulSoup

from sympy import Symbol, solve, pprint

code = input('회사 코드를 입력하세요')

multiple = input('회사의 멀티플을 적어주세요')

int_multiple = int(multiple)

URL = 'https://finance.naver.com/item/main.nhn?code='+(code)

result = requests.get(URL)

soup = BeautifulSoup(result.text, 'html.parser')

주식회사 발행 주식

num_stock = soup.find('div',{'class':'first'})

trs = num_stock.find_all("tr")

first_tr = trs[2]

tds = first_tr.find_all("td")

first_td = tds[0]

first_em = first_td.find("em")

final_num_stock = first_em.text

final_num_stock1 = final_num_stock.replace(",","")

int_final_num_stock1 = int(final_num_stock1)

회사의 예상 영업이익 + 멀티플 + 단

finance_info = soup.select('div.section.cop_analysis > div.sub_section > table > tbody > tr')

finance_info = finance_info[1].select('td')

num_price = finance_info[3].text.strip()

int_num_price = num_price.replace(",","")

int_price = int(int_num_price) * int_multiple * int(100000000)

x=Symbol("x")

equation = int_final_num_stock1 * x - int_price

good_price = solve(equation)

pprint(good_price)

  • (•́ ✖ •̀)
    알 수 없는 사용자

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)