묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨파이썬 동시성 프로그래밍 : 데이터 수집부터 웹 개발까지 (feat. FastAPI)
강사님 강의때 사용하신 강의자료나 그림같은건 어디 있을까요 ?ㅠ
강의 내용에 도움이 될거같아서 주소나 첨부자료 보내주시면 강의 들을때 같이 활용해보도록 하겠습니다 감사합니다
-
해결됨파이썬 동시성 프로그래밍 : 데이터 수집부터 웹 개발까지 (feat. FastAPI)
git 주소
강사님 이해안되서 git좀 참고하려고하는데 강의하신 자료랑 git주소좀 알려주세요 ..
-
해결됨파이썬 동시성 프로그래밍 : 데이터 수집부터 웹 개발까지 (feat. FastAPI)
local 에서 웹사이트 뜨는 것을 확인하였는데, aws lightsail 에서 프로그램 실행 시키고 ㅡ 제 local 에서 접속하려 하니 응답이 없습니다;
어떤 정보를 포함해서 질문을 올리면 좋을까요??
-
해결됨파이썬 동시성 프로그래밍 : 데이터 수집부터 웹 개발까지 (feat. FastAPI)
깃에 나와있는 내용을 볼 수가 없습니다.
안녕하세요. 강사님현재 강사님 강의 듣고 있는 수강생 입니다.Python의 패키지 매니저 PIP 명령어 정리와 사용해당 파트 에서 0:30초에 나오는 필수적인 명령어정리되어 있는 페이지가 강사님 git 에서 보이지 않아서요.어디서 찾아 볼 수 있는 것 인가요 ?확인 부탁드리겠습니다.감사합니다.
-
해결됨파이썬 동시성 프로그래밍 : 데이터 수집부터 웹 개발까지 (feat. FastAPI)
Scraping code 관련 질문
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. ---------- ---------- # 감사의 인사 안녕하세요! 먼저 좋은 강의 만들어주셔서 감사합니다. 파이썬 문법을 기본적인 것을 떼고 프레임워크와 함께 무언가 만들어볼라고 하던 찰나 FastAPI와 함께 크롤링까지 학습할 수 있어서 좋은 강의인 것 같습니다 : ) 스크랩핑의 경우, json.load 관련하여 학습하다보니 serialize 개념에서 시작하여 json.dump와 json.loads 등등 과 parser 개념에 대해 학습할 수 있어서 너무 좋았습니다. 이것저것 학습하다보니 하루가 쑤욱 갔네요... ---------- ---------- # 질문 1 먼저 구글링을 하고 나서 질문드립니다. 1) 아래 코드에서 response 앞에 await이 올 수 있는 이유 async def fetch(session, url): print(f"{os.getpid()} | {threading.get_ident()} thread | url: {url}") async with session.get(url) as response: return await response.text 공식 문서에 따르면 await 뒤에는 코루틴, 태스크 또는 퓨처가 와야한다고 하는데, 위 코드에서 await이 올 수 있던 것은 여기서 response가 async with session.get(url)의 alias 여서 가능한건가요??? 만약 그렇다면 with문은 context manager인 걸로 알고 있습니다. 자원을 할당해주고 다 사용하면 반환하는 역할인 것으로요. 그러면 이 with문이 어째서 코루틴에 속하는지 잘 모르겠습니다. ------- # 질문 2 2) html.parser 이 질문은 제가 이해한 게 맞는 건지 여쭤보는 질문입니다. beautifulsoup(html, "html.parser") code 부분에서 html을 구문분석할 parser를 "html.parser"로 정한다는 의미인가요? 그리고, HTML parser란 HTML 코드를 읽고 취해서 DOM tree 구조를 생성하는 프로그램이라 이해하면 되나요?? 이 부분은 구글링하여 학습했으나, 강사님의 내포하는 지식과 일치하는지 확인받을려는 질문입니다. ------- # 질문 3 3) await을 넣는 위치 코루틴이란 진입점과 탈출점이 여러 개인 routine인 것으로 이해했고, 그 포인트들이 await과 return으로 만들어진다고 강의를 통해 이해했습니다. 그런데, 왜 이 위치에 await을 썼는가? 라는 의문에는 쉽게 답이 나오지 않는 것 같습니다. from bs4 import BeautifulSoup import asyncio import aiohttp async def fetch(session, url): async with session.get(url) as response: html = await response.text soup = BeautifulSoup(html, 'html.parser') cont_thumb = soup.find("div", "cont_thumb") for cont in cont_thumb: print(cont.find("p", "text_thumb")) 위 코드에서 await은 response.text 앞에 있는데요. await의 위치는 작성자가 임의로 위치할 수 있는 건인지, 아니면 별도로 제가 모르는 내용이 있는 건지 알고 싶습니다. ------- #질문 4 4) config.py의 get_secret() 질문 get_secret function 매개변수 3개를 key, default_value, json_path 를 입력하셨습니다. json_path의 경우, BASE_DIR를 전역변수로 입력하셨기 때문에 함수 인자로 입력하지 않아도 인식된다고 이해하면 될까요? 또한, EnvironmenError의 내용을 보면 이 Error 설명을 보면 Base class for I/O related Errors 나와있는데, 왜 I/O 관련 에러인지 모르겠습니다. 이 Error는 key에 대한 대체값인 default_value가 없는 경우 발생되는 걸로 이해했습니다. CPU가 이 값을 읽는건데 I/O 인가요? 그리고, get_secret() 같은 함수를 작성하실 때 어떠한 흐름으로 작성하시는지 궁금합니다. 작성을 하면서 수정하시는 건지, 아니면 처음부터 이 function은 이 역할을 하고, 이 역할을 위해서 별도의 function을 만들고 라는 방식으로 하시는 건지 입문자로서 궁금합니다. ------- # 질문 5 5) 마지막 질문입니다. 이건 학습 관련 질문입니다. 이번 강의를 마치고, 운영체제와 네트워크 공부를 다시 복습하고, 자료구조와 알고리즘 공부를 할려고 하는데, 프레임워크에 대해서 학습하고 싶습니다. FastAPI를 깊이 공부할지, 아니면 Django를 학습할지 고민입니다. 인프런의 Django 강의를 결제하여 듣고 있으나, 너무 꼼꼼하셔서 그런지 강의가 heavy하네요..ㅠㅠ 어떻게 학습하시는 걸 추천하시나요??? -------------- -------------- 질문 읽어주셔서 감사합니다.
-
미해결파이썬 동시성 프로그래밍 : 데이터 수집부터 웹 개발까지 (feat. FastAPI)
PyCharm으로 본강의를 구동가능한가요..?
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 강사님 안녕하세요~! 6번째 챕터 FastAPI로 웹크롤링하는 것을 잘 보고 있습니다!! 궁금한 점이 VS Code로 강의를 진행하셨는데, 혹시 파이참으로도 구동이 가능한가요..? 답변 꼭 부탁드리겠습니다~!^^
-
해결됨파이썬 동시성 프로그래밍 : 데이터 수집부터 웹 개발까지 (feat. FastAPI)
안녕하세요 ~ 파이썬 코루틴 활용 강의에 대해 질문이 있습니다.
안녕하세요. 강의 잘보고 있습니다. request 모듈을 사용할때 session 을 열어 두고 사용하셨는데 세션을 연결하지 않고 사용할때와 세션을 연결하고 사용할때 차이점을 알수 있을까요 ?
-
해결됨파이썬 동시성 프로그래밍 : 데이터 수집부터 웹 개발까지 (feat. FastAPI)
uvicorn reload 설정 관련
안녕하세요! 이전에 nest.js 강의를 듣고, 너무나 큰 만족감과 함께 많은 도움을 얻었던 기억이 있어서 fast api 강의도 출시하자마자 구입하여 공부중인 회원입니다! 이번 질문을 통해 문의드리고자 하는 내용은 uvicorn의 reload 설정 문제입니다. 현재 클라이언트로부터 파일(.zip)을 업로드 받아서, 압축 해제 후 subproccess로 실행시키는 API를 만들어서 연습해보고 있습니다. 참고로 압축 결과물은 파이썬 파일(.py) 입니다. 그런데, 압축해제 할 때마다 uvicorn이 변화를 감지하여 서버를 재실행시킵니다. 물론 reload 기능을 OFF하면, 문제가 없습니다. 하지만 uvicorn.run 옵션 중에 reload_excludes가 있어서 사용해보려고 했으나 원하는대로 동작하지 않네요 ㅠㅠ (참고: Settings - Uvicorn) 프로젝트 루트 경로에 있는 server.py 파일은 아래와 같이 작성하였고, 파일 업로드를 받아 압축해제하는 경로는 다음과 같습니다. {{project root}}/app/files import uvicorn if __name__ == "__main__": uvicorn.run( "app.main:app", host="localhost", port=8000, reload=True, reload_excludes=["app/files/"], ) 위와 같이 설정하여도 uvicorn은 app/files 경로내의 변화를 감지합니다..ㅠ_ㅜ uvicorn의 reload 제외 설정을 어떻게 해야할까요! 답변 부탁드리겠습니다..!