A/S 1. クローラマネージャエラーの修正
8978 ワード
ピボットまたはコードからエラーの位置を検出します.
既存のコードの配置
入る前に
次のように動作します.
2.終了
既存のコードの配置
入る前に
再エンコード中にエラーのエンコードが見つかりました.修正を通知し、A/S位置決めに変更する方法を考えています.後で、このような方法でエラーの発見と修復を通知します.
1.爬行命令エラーの修正
今回A/Sハックマンは登りです.特にWeb scrippingは、Web構造が少し変わるとエラーが発生する部分です.しかし,今回は1つの決定振動子の数が4桁になり,数字にカンマを増やし,int()を用いたときにValueErrorを生じた.
この現象を修正してください.Util.py
class Util(commands.Cog):
...
@commands.command(aliases=['코로나']) # !코로나 입력 시에도 실행 가능
async def crawl(self, ctx):
...
if response_code == 200: # 정상 작동(코드 200 반환) 시
soup = BeautifulSoup(response.content, 'lxml')
else: # 오류 발생
return await ctx.send("웹 페이지 오류입니다.") # 오류 시 바로 종료하도록 함
today_domestic = today[0].text # 리스트 첫 번째 요소 (국내발생), int() 사용 대신 string으로 바로 넣음
today_overseas = today[1].text # 리스트 두 번째 요소 (해외유입), int() 사용 대신 string으로 바로 넣음
today_total = format((int(today_domestic.replace(',', '')) + int(today_overseas.replace(',', ''))), ',') # 일일 총 확진자 수를 따로 계산
accumulate_confirmed = soup.find("div", {"class": "liveNum"}).find("span", {"class": "num"}).text[
4:] # 앞에 (누적) 글자 자르기
embed = discord.Embed(title="국내 코로나 확진자 수 현황", description="http://ncov.mohw.go.kr/ 의 정보를 가져옵니다.",
color=0x005666)
embed.add_field(name="일일 확진자",
value=f"총: {today_total}명, 국내: {today_domestic}명, 해외유입: {today_overseas}명",
inline=False)
embed.add_field(name="누적 확진자", value=f"{accumulate_confirmed}명", inline=False)
await ctx.send(embed=embed)
...
今回A/Sハックマンは登りです.特にWeb scrippingは、Web構造が少し変わるとエラーが発生する部分です.しかし,今回は1つの決定振動子の数が4桁になり,数字にカンマを増やし,int()を用いたときにValueErrorを生じた.
この現象を修正してください.
Util.py
class Util(commands.Cog):
...
@commands.command(aliases=['코로나']) # !코로나 입력 시에도 실행 가능
async def crawl(self, ctx):
...
if response_code == 200: # 정상 작동(코드 200 반환) 시
soup = BeautifulSoup(response.content, 'lxml')
else: # 오류 발생
return await ctx.send("웹 페이지 오류입니다.") # 오류 시 바로 종료하도록 함
today_domestic = today[0].text # 리스트 첫 번째 요소 (국내발생), int() 사용 대신 string으로 바로 넣음
today_overseas = today[1].text # 리스트 두 번째 요소 (해외유입), int() 사용 대신 string으로 바로 넣음
today_total = format((int(today_domestic.replace(',', '')) + int(today_overseas.replace(',', ''))), ',') # 일일 총 확진자 수를 따로 계산
accumulate_confirmed = soup.find("div", {"class": "liveNum"}).find("span", {"class": "num"}).text[
4:] # 앞에 (누적) 글자 자르기
embed = discord.Embed(title="국내 코로나 확진자 수 현황", description="http://ncov.mohw.go.kr/ 의 정보를 가져옵니다.",
color=0x005666)
embed.add_field(name="일일 확진자",
value=f"총: {today_total}명, 국내: {today_domestic}명, 해외유입: {today_overseas}명",
inline=False)
embed.add_field(name="누적 확진자", value=f"{accumulate_confirmed}명", inline=False)
await ctx.send(embed=embed)
...
format()
:1000単位で記入2.終了
エラーが発生したコマンドを修正しました.他のエラーが発生したら、これらの情報を再アップロードします.
githubフルコード
Reference
この問題について(A/S 1. クローラマネージャエラーの修正), 我々は、より多くの情報をここで見つけました
https://velog.io/@chaejm55/AS-1.-crawl-커맨드-오류-수정
テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol
Reference
この問題について(A/S 1. クローラマネージャエラーの修正), 我々は、より多くの情報をここで見つけました https://velog.io/@chaejm55/AS-1.-crawl-커맨드-오류-수정テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol