
* 겪고 있는 문제 상황을 최대한 자세하게 작성해주세요.
* 문제 해결을 위해 어떤 시도를 해보았는지 구체적으로 함께 알려주세요.
import requests
import pandas as pd
import numpy as np
from bs4 import BeautifulSoup as bs
df=pd.DataFrame()
marketType={
"KOSPI":"0",
"KOSDAQ":"1"
}
for market, code in marketType.items():
for page in range(1,36):
req=requests.get(f"https://finance.naver.com/sise/sise_market_sum.naver?sosok={code}&page={page}")
html=req.text
soup=bs(html,"lxml")
stockContents=soup.select('#contentarea > div.box_type_l > table.type_2 > tbody > tr')
for stockContent in stockContents:
try:
stockRank=stockContent.select_one("td.no").text
stockName=stockContent.select_one("td:nth-of-type(2) > a").text
stcckcap=stockContent.select_one("td:nth-of-type(7)").text
# print(f'{market}-{stockRank}등:{stockName}-{stcckcap}')
data = {
"market" : market,
"stockRank": stockRank,
"stockName" : stockName,
"stcckcap": stcckcap
}
df = df.append(data, ignore_index = True)
except AttributeError:
continue
#저 위의 표에서 market/stockRank/ stockName/stcckcap 옆에, 아래 자료를 참고하여 옆에 해당되는 stock_code를 붙였으면 함.
!pip install dart-fss
import dart_fss as dart_fss
api_key = '3aa1ab7e5de6c1e156ee3cd0f2c7ca3d42b72b0b'
dart_fss.set_api_key(api_key=api_key)
corp_list = dart_fss.get_corp_list()
all=dart_fss.api.filings.get_corp_code()
df=pd.DataFrame(all)
df_listed=df[df['stock_code'].notnull()]
#df_listed.to_excel('상장종목.xlsx')
df_listed=df_listed[['corp_name','stock_code']]
df_listed.columns=['stockName','stock_code']
df_listed
df_INNER_JOIN = pd.merge(df, df_listed, left_on='stockName', right_on='stockName', how='inner')
print(df_INNER_JOIN)

