본문 바로가기

개인 저장

메이플스토리 인게임 API 자료 정리

728x90

http://api.maplestory.nexon.com/soap/maplestory.asmx

 

MapleStory 웹 서비스

MapleStory 다음 작업이 지원됩니다. 형식 정의를 보려면 서비스 설명을 참조하십시오.

api.maplestory.nexon.com


MapleStory

다음 작업이 지원됩니다. 형식 정의를 보려면 서비스 설명을 참조하십시오.


파이썬 기준 메이플스토리 API 소스코드

 def patch(self):
        try:
            URL = 'http://api.maplestory.nexon.com/soap/maplestory.asmx'
            res = requests.get(URL)

            if res.status_code == 200:
                GetInspectionInfo = """<?xml version="1.0" encoding="utf-8"?>
                    <soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
                    <soap12:Body>
                        <GetInspectionInfo xmlns="https://api.maplestory.nexon.com/soap/" />
                    </soap12:Body>
                    </soap12:Envelope>
                """
                headers = {'Content-Type': 'application/soap+xml'}
                resp = requests.post(URL, data=GetInspectionInfo, headers=headers)
                scheduledStart = re.findall("<startDateTime>(.*?)</startDateTime>",resp.text)
                scheduledEnd = re.findall("<endDateTime>(.*?)</endDateTime>",resp.text)
                content = re.findall("<strObstacleContents>(.*?)</strObstacleContents>",resp.text)
                
                tkinter.messagebox.showinfo(title='메이플스토리 팅패치 정보', 
                                            message=f'시작예정 : {scheduledStart[0]}\n종료예정 : {scheduledEnd[0]}\n패치내용 : {content[0]}') 
            else:
                tkinter.messagebox.showwarning(title='Not Response 200', message='팅패정보를 불러오지 못하였습니다.')
        except:
            tkinter.messagebox.showerror(title='Error', message='팅패정보를 불러오지 못하였습니다.')
        return
728x90