묻고 답해요
156만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
21강의 DUT 질문 있습니다.
21장 코드의 case문을 보면 c_state를 아래 정의한 case들과 비교해 각각의 명령을 실행하는 것인데 여기서 S_DONE일 경우 n_state를 S_IDLE로 바꿉니다. 근데 왜 wave form에서는 바로 바뀌지 않고, 1cycle 정도 후에 바뀌나요?또 여기서 1cycle은 어떤 것을 의미하나요? 감사합니다.always (c_state or i_run or is_done) begin n_state = S_IDLE; case (c_state) S_IDLE : if (i_run == 1) n_state = S_RUN; S_RUN : if (is_done == 1) n_state = S_DONE; S_DONE : n_state = S_IDLE; endcase end
-
미해결바로 써먹는 GA4 실무리포트(2025)
퍼널리포트 실습3 11분33초
구매 재방문자 10시간 47분의미가3.결제진입에서 구매까지 10시간47분의미인지제품보기에서(첫퍼널) 10시간47분인지 궁금합니다
-
해결됨실전 연습으로 익히는 고급 타입스크립트 기술
행운문제 닉네임 등록 요청드립니다
leo3179위 닉네임 등록요청합니다
-
미해결바로 써먹는 GA4 실무리포트(2025)
퍼널리포트 실습3 강의 5분0초
세그먼트 일시적제외가 아니라 완전히 제외해야하는거아닌가요?
-
미해결
강의 업데이트가 되어있나요?
강의자료나 영상이 지속적으로 업데이트 되고있는 강의인가요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
테스트코드 메서드명 한글
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]영한님 안녕하세요.테스트 코드 작성하실때 메서드명을 한글로 기재하시던데 실제 실무에서 테스트 코드 작성하실때도 한글로 작성하셨었나요?
-
미해결바로 써먹는 GA4 실무리포트(2025)
퍼널리포트 실습2, 8분
핑크색 사각형안의 다음액션 상위5개 부분 해석어떻게해요?장바구니 추가에서 view cart로 이동이 전월대비 48.2%감소했다는건가요?
-
미해결자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
궁금한게 있습니다!
이렇게 3단분리를 할때 처음부터 코드를 작성할때 이렇게 3가지 역할을 분리해서 각각 구현해야지! 라고 다 미리 설정해두고 코드를 짜는건가요 아니면 controller 에 일단 다 구현해놓고 그다음 분리해서 구현하는건가요?? 전자면 미리 생각하게 많아 뭔가 복잡해보여서요 ㅜ
-
미해결프로그래밍 시작하기 : 도전! 45가지 파이썬 기초 문법 실습 (Inflearn Original)
아나콘다 설치 시 오류가 뜨면서 인스톨이 끝까지 안 되네요...
안녕하세요. 강의에서 알려주신 방법대로 아나콘다를 설치하였는데, 인스톨 하는 과정에서 자꾸 캡쳐 사진처럼 에러가 뜹니다...ㅠㅠ '무시' 버튼을 눌러 진행을 하였더니 완료는 되었는데... 주피터 노트북도 그렇고 전체적으로 제대로 깔리지 않은 것 같아서요ㅠ 재설치를 진행하였지만, 역시나 캡쳐 사진처럼 계속 저 페이지가 뜹니다... 제 노트북에 파이썬과 vs코드가 이미 깔려 있어서 그런 걸까요? 주피터 노트북만 따로 받아야 할런지요... 빨리 해결이 되어, 강의를 진행할 수 있으면 좋겠습니다. 읽어주셔서 감사합니다!
-
미해결웹플로우(Webflow) 시작하기 - 코딩 없이 자유도 높은 프로토타입 만들기
웹플로우 게시판 기능 관련
안녕하세요 게시판 기능 구현 질문드립니다. 글쓰기 기능이 있는 공지사항과 같은 심플한 UI는 웹플로우로 구현이 가능한가요?
-
미해결독하게 시작하는 C 프로그래밍
본 강의에 대한 질문들입니다.
우선 좋은 강의를 제공해주시는 널널한 개발자님에게 감사를 드립니다. 일단 첫번째 질문은 2분 30초 쯤에 말하신 1바이트의 공간을 관리한다 즉 번호표를 매긴다라는 의미에 대한 질문입니다. 제가 아는 배경지식으로 이해한 방법은 주소가 0x0000000000000000부터0xFFFFFFFFFFFFFFFF까지 범위가 있는데 이를 운영체제가1바이트인 공간에 이걸 찾기 위해서1바이트인 공간을 (ex 0x00000ab2332f0001라는 주소를 붙여준다(은행 번호표처럼 사람에게 식별하기위해 번호표를 준다?)라고 이해하는게 맞나요? 2번째 질문은 직접 지정에 대한 내용입니다. 8분쯤 상황을 이해한걸 제가 설명해보겠습니다.직접지정은 제가 지역변수에 int ndata를 선언했다고 가정하면 OS가 ndata의 주소를 할당해주는데그 때 ndata에 지정된 주소를 직접지정된 주소라고 하는건가요? 아님 OS가 할당후에 할당한 주소로 찾아가 우리가 그 주소를 상수로 고정 시키겠다라고 하는게 직접할당인가요? 강사님이 말하시는게 2가지 의미로 해석이 되서 약간 헷갈립니다. 3번째 질문인 간접지정에 대한 내용입니다. 위에 가정을 끌고와서 int ndata라는 변수를 선언한 주소를 저장하기 위해 int *p = &ndata라고 선언을 하면 변수 p라는 공간이 생겨 나고 그 변수 p의 공간에 ndata의 주소를 담아 저장한다. 그런데 p는 ndata가 아니라 다른 사용자가 선언할 데이터의 주소를 담을 수 있기에 변수이고 이를 간접지정이라고 한다 맞나요?
-
미해결스프링 핵심 원리 - 기본편
테스트 코드 beforeEach() 메서드만 public 접근 제어자를 선언한 이유
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]안녕하세요, 영한님.아래에 상황 - 의문 - 추측 - 결론 순으로 질문드리겠습니다! 상황:이번 시간에 AppConfig를 사용하도록 수정한 OrderServiceTest와 MemberServiceTest 코드에서 새롭게 다음 메서드를 만들었습니다.@BeforeEach public void beforeEach() { // ... } 의문1:그런데 이전에 만들었던 다른 메서드들의 경우 package-private로 접근을 제어하고 있습니다. 그래서 왜 두 경우에 다른 접근 제어자가 사용되었는지 의문이 들었습니다.@Test void createOrder() { // ... } 추측1:스택오버플로우 1을 보니 과거에는 리플렉션 기술을 통해 테스트 메서드를 식별해야 했기 때문에 public으로 열어두는 것이 필요했다.또한 이에 대한 JUnit5 탑 컨트리뷰터 Sam Brannen의 답변에서는 "less is more라는 원칙에 따라 더이상 public이 필요하지 않기 때문에 JUnit5부터는 작성하지 않아도 된다."고 하더군요. JUnit5 공식 문서에서도 "public 접근 제어자로 선언될 필요는 없다. 다만, private이면 안 된다."는 안내를 확인했습니다(아래 사진 참고). 결과적으로,위 내용들을 근거로 "과거 관례로 인해 영한님이 public을 사용하셨겠구나."라는 추측을 했습니다. 결론:결국 'JUnit5 이후부터는 테스트 메서드에 대해 public을 붙이지 않는 것을 권장한다(붙여도 문제는 없다).'는 것인데, (물론 개발팀 컨벤션에 따라 다르겠지만) 현업에서는 다음 두 경우 중 어떤 방식이 채택되는 경우가 더 빈번한지 여쭤봅니다!과거 관례에 이어 public을 여전히 작성한다.이제 public을 안 붙여도 되고, 이 방식을 JUnit5에서도 권장하기 때문에 더 이상 붙이지 않는다. 감사합니다.
-
미해결한 입 크기로 잘라먹는 타입스크립트(TypeScript)
데코레이터강의는 없나요?
데코레이터강의가 안보여서 그러는데 제가 아직 다못들어서 그런건지원래없는건지 몰라서 글남깁니다.
-
미해결PM을 위한 데이터 리터러시(프로덕트 데이터 분석)
지표정의 4-8 문제풀이 입니다.
기능이 잘 동작하고 있는지 확인하려면?배달서비스 메인화면에서 배너, 메뉴 카테고리, 추천영역등이 잘 동작하고 있는지 확인하려면?Hitmap: 5% 미만 클릭영역 식별이유: UI 사각지대 발견배너: 전달 내용 대비 유저 참여수/출력수로 실제 참여유도 효과 측정이유: 배너의 실질적 효과성 평가카테고리: 각 카테고리 방문 대비 주문전환율(주문수/카테고리 방문수) 확인이유: 전환율이 낮은 카테고리 식별 및 개선 방향 설정추천영역: 추천 후 주문 연결수/추천 클릭수로 실제 참여 연결효과 측정이유: 추천의 실질적 비즈니스 기여도 측정N분 이내 기준 설정으로 중간 다른 활동을 통한 주문 배제 검색 만족도 지표고객이 검색 기능에 만족했는지 확인하려면 어떤 지표?검색 퍼널: 검색단어 입력 → 검색실행 → 결과값 클릭 → 실제 주문까지의 전환율→ N분 이내 주문률로 즉시성 측정검색 정확도: 상위 N개 결과 클릭률을 통한 검색 품질 평가(Sub 지표)이유: 만족스러운 검색 결과의 클릭율과 실제 주문까지의 퍼널로 전체적 만족도 측정 검색필터 기능의 활성화 지표검색 필터 기능을 잘 사용되고 있을까요? 기능 활성화 지표를 정의하면 어떻게 할 수 있을까요?필터사용퍼널: 검색단어 입력 → 검색실행 → 필터 사용 → 결과값 클릭 → 실제 주문까지의 전환율이유: 검색 만족도와 동일한 퍼널 관점에서 필터 기능의 실제 가치 측정 배달 서비스에서 가장 중요한 지표는?가장 중요한 지표는 무었을까요? 왜 그 지표가 중요한가요? 그것을 어떻게 늘릴수(줄일 수) 있을까요?실제 주문기준 Retention이유:리텐션이 낮으면 지속적 마케팅 비용 부담으로 서비스 지속성 위험.마케팅 비용 없이도 자생할 수 있는 힘 필요맛집까지의 연결, 추천, 주문 비율을 높여야한다 생각이유:맛집을 가장 잘 연결해주는 것이 중요.맛이 좋으면 배달시간, 서비스 태도가 다소 부족해도 재방문 가능하지만, 맛까지 없으면 최악 추천 알고리즘의 성능 지표추천알고리즘은 유저 정보, 로그를 토대로 구매할것 같은 제품을 보여줌추천 알고리즘 성능을 확인하기 위해선 어떤 지표를 파악? 왜 해당 지표일까?전환율: 장바구니 or 주문 Count / 알고리즘 View Count이유: 알고리즘 목적이 구매유도이므로 실제 구매까지의 전환율로 측정 자주 사용하는 서비스의 지표자주 사용하는 서비스에서 제일 중요한 지표는 무엇일까요? 왜 해당 지표가 중요할까요?그 외 2개를 더 뽑는다면 어떤 지표가 있을까요?가상 서비스 개요(자주 사용하는 서비스 대신 강의청취중 생각난 아아디어로 진행해보았습니다.)온라인 강의 수강 중 실시간 피드백의 한계를 해결하기 위한 서비스강사가 통화 가능 시간을 표시하면 수강생이 전화를 걸어 1분 단위로 재화를 소모하며 멘토링을 받고,멘토는 포인트를 적립하는 구조.지표설계 OMTM: NRR Retention재화 소모 통화 후 지속적 재방문 및 재화 소모 여부 측정이유: 서비스가 돈을 지속적으로 사용할 만한 가치가 있는지 판단 Sub_1: 매칭 효율성시간대별 수강자수/멘토수 비율과 실제 연결비율 측정이유: 공급/수요 불균형 팡가 및 연결과정의 허들 식별 Sub_2: 통화품질서비스에 만족감을 느끼는지 파악하여 서비스 가치 판단통화 후 1분이내 팔로우 비율이유: 재통화 의향을 나타내는 즉시 반응 측정으로 만족도 평가통화 후 리뷰정성적 리뷰 데이터로 만족도 측정이유: 주관적 작성 요구로 품질 높은 피드백 확보통화시간분단위 비용 소모의 높은 허들을 파악 → 그 이상으로 통화하는 비율 측정이유: 높은 비용 부담에도 지속하는 통화는 서비스 가치 인정의 지표 퍼널 개선 프로젝트가입 퍼널 프로세스가 20%인데 이걸 개선하라는 미션가입에서 온보딩을 더 진행하는 기능을 만듬 → 온보딩 효과를 보려면 어떤 지표를?가입전환율: 기존 20% 전환율의 변화 측정으로 전체적 효과 확인온보딩 달성률: 초기 핵심 활동 달성수 / 가입수로 온보딩 목적 달성도 측정 1번을 풀다보니 궁금한게 있어 추가질문 드립니다!퍼널 분석 시 사용자가 중간에 다른 과정을 거쳐 목표에 도달하는 경우 어떻게 분석하나요?예시: 배달 서비스 메인영역 클릭 → (중간에 검색, 카테고리 탐색 등) → 장바구니/주문 완료이런 간접 경로를 통한 전환도 메인영역의 성과로 인정해야 하는지, 인정한다면 어떤 방식으로 측정하는지 궁금합니다.
-
미해결Airflow 마스터 클래스
38강. Task groups 관련 질문
안녕하세요. Task group 생성 시, task decorator를 활용한 방법과 그렇지 않은 방법 이렇게 두 가지가 있다고 하셨는데, task decorator를 활용한 방법의 경우, docstring에 작성한 내용이 UI에서 보여지고,task decorator를 활용하지 않은 방법의 경우, tooltip 인자에 입력된 내용이 UI에서 보여지는 것으로 알고 있습니다. 그런데 Airflow 3.0.x 버전에서 실제로 실습을 진행해보니 docstring 및 tooltip 인자에 작성한 내용이 아래와 같이 UI 화면에서 보이지 않는 것으로 확인됩니다 ㅠ Airflow 3.0.x 버전 공식 문서를 읽어봐도 강사님 말씀과 동일하게 docstring 및 tooltip을 사용하면 UI 화면에서 보여질 거라고 적혀있는데... 뭐가 문제일까요..? 코드는 강사님이 작성하신 것과 동일한데, 혹시 몰라 제가 작성한 코드도 같이 첨부 드립니다.import pendulum # Airflow 3.0 버전부터 아래 경로에서 import from airflow.sdk import DAG, task, task_group, TaskGroup from airflow.providers.standard.operators.python import PythonOperator # Airflow 2.10.5 이하 버전에서 실습 시, 아래 경로에서 import # from airflow.operators.python import PythonOperator # from airflow import DAG # from airflow.decorators import task # from airflow.decorators import task_group # from airflow.utils.task_group import TaskGroup with DAG( dag_id = 'dags_python_with_task_group', schedule = None, start_date = pendulum.datetime(2023, 4, 1, tz = 'Asia/Seoul'), catchup = False ) as dag: def inner_func(**kwargs): msg = kwargs.get('msg') or '' print(msg) @task_group(group_id = 'first_group') def group_1(): ''' task_group decorator를 이용한 첫 번째 그룹입니다. ''' @task(task_id = 'inner_function1') def inner_func1(**kwargs): print('첫 번째 TaskGroup 내 첫 번째 task 입니다.') inner_function2 = PythonOperator( task_id = 'inner_function2', python_callable = inner_func, op_kwargs = {'msg': '첫 번째 TaskGroup 내 두 번째 task 입니다.'} ) inner_func1() >> inner_function2 with TaskGroup(group_id = 'second_group', tooltip = '두 번째 그룹입니다') as group_2: ''' 여기에 적은 docstring은 표시되지 않습니다. ''' @task(task_id = 'inner_function1') def inner_func1(**kwargs): print('두 번째 TaskGroup 내 첫 번째 task 입니다.') inner_function2 = PythonOperator( task_id = 'inner_function2', python_callable = inner_func, op_kwargs = {'msg': '두 번째 TaskGroup 내 두 번쨰 task 입니다.'} ) inner_func1() >> inner_function2 # Task Group도 flow 설정 가능 group_1() >> group_2
-
미해결
ECO (People) 예제 질문
아래 사항 중, 답이 B만 되는 이유가 궁금합니다. A의 경우, Product Owner의 스크럼 참석이 문제가 되는 것인지 (Dealer 처럼) 아니면, 참석은 문제가 안되는데, user strories에 대한 방향을 결정 한 것이 문제가 되는 것인지요? (즉 scrum master가 발견 할 수 있었던 사항과는 거리가 먼 건지...)
-
미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
파일 제거 방법
안녕하세요 🙂현재 다시 재수강을 하려고 합니다. 그런데 저가 재설치와중에 오류가 생겨서 다시 전체 삭제하구 진행하려고 하는데 어떤 파일을 지워야하는지 전체 rm -rf 구문을 사용해야하는지 잘모르겠습니다[1. 질문 챕터] : eg) 몇 장, 몇 분 몇 초 쯤. or 수강생 분들이 봤을 때 어디구나?! 할 수 있게 표기 부탁 드려요.[2. 질문 내용] : eg) 질문 내용을 자유롭게 작성해주시면 되겠습니다 🙂[3. 시도했던 내용, 그렇게 생각하는 이유] : eg) 설치영상은 이렇게 시도했는데 안되더라 or 본인의 생각을 적어주세요. (실습 내용 중에 이해가 안되거나 잘못된 내용이 있는데, 이러 이러한 근거로 나는 이렇게 생각합니다.) ================ 다음 내용은 읽어보시고 지우시면 됩니다.=================질문 내용을 작성해주실 때, 위의 3단계로 제가 이해할 수 있게 작성해주시면 정확한 답변을 드릴 수 있을 것 같아요!!현업자인지라 업무때문에 답변이 늦을 수 있습니다. (길어도 만 3일 안에는 꼭 답변드리려고 노력중입니다 ㅠㅠ)강의에서 다룬 내용들의 질문들을 부탁드립니다!! (설치과정, 강의내용을 듣고 이해가 안되었던 부분들, 강의의 오류 등등)이런 질문은 부담스러워요.. (답변거부해도 양해 부탁드려요)개인 과제, 강의에서 다루지 않은 내용들의 궁금증 해소, 영상과 다른 접근방법 후 디버깅 요청, 고민 상담 등..글쓰기 에티튜드를 지켜주세요 (저 포함, 다른 수강생 분들이 함께보는 공간입니다.)서로 예의를 지키며 존중하는 문화를 만들어가요.질문글을 보고 내용을 이해할 수 있도록 남겨주시면 답변에 큰 도움이 될 것 같아요. (상세히 작성하면 더 좋아요! )먼저 유사한 질문이 있었는지 검색해보세요.잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.==================
-
해결됨챗GPT와 파이썬으로 주식 자동매매 앱 및 웹 투자 리포트 만들기
GPT 버전 관련 질문
최근 GPT-5를 이용한 신규 강의가 올라왔던데 현재 강의를 통해서도 GPT-5로 충분히 원하는 결과를 얻을 수 있을까요? 아니면 최신 강의를 수강하는 편이 나은지 궁금합니다.
-
미해결[2025년 출제기준] 웹디자인기능사 실기시험 완벽 가이드
D유형 레이아웃 연습중인데 슬라이드 이미지 크기가 변하지 않습니다
@charset "UTF-8"; body{ margin: 0; background-color: #ffffff; color: #333333; } a{ text-decoration: none; color: #333333; } .container{ width: 100%; } .main{ margin: auto; display: flex; border: 1px #333333 solid; box-sizing: border-box; } footer{ margin: auto; } .left{ width: 200px; border: 1px #333333 solid; box-sizing: border-box; } .right{ width: calc(100% - 200px); border: 1px #333333 solid; box-sizing: border-box; } .header-logo{ height: 100px; border: 1px #333333 solid; } .navi{ border: 1px #333333 solid; box-sizing: border-box; height: 100px; } .sub-menu{ border: 1px #333333 solid; height: 100px; } .header-logo a img{ object-fit: cover; } .slide{ height: 400px; border: 1px #333333 solid; position: relative; } .slide-itmes{ height: 400px; border: 1px #333333 solid; position: relative; overflow: hidden; } .silde-items-img{ height: 400px; width: 300%; font-size: 0; position: absolute; } .silde-items-img a{ border: 1px #333333 solid; height: inherit; width: calc(100% / 3); display: inline-block; box-sizing: border-box; } .silde-items-img a img{ object-fit: cover; height: inherit; width: 100%; } .slide-banner{ position: absolute; top: 0; right: 0; box-sizing: border-box; } .item1{ height: 200px; border: 1px #333333 solid; box-sizing: border-box; } .item2{ height: 250px; border: 1px #333333 solid; box-sizing: border-box; } .news{ height: inherit; } footer{ border: 1px #333333 solid; display: flex; justify-self: start; box-sizing: border-box; width: 100%; } footer>div{height: 100px;} .footer-logo{ background-color: #161111; width: 200px; } .copyright{ background-color: aqua; width: calc(100% - 400px); } .sns{ background-color: rgb(158, 69, 69); width: 200px; }<!DOCTYPE html> <html lang="ko"> <head> <meta charset="UTF-8"> <link rel="stylesheet" href="css/style.css"> <title>Document</title> </head> <body> <div class="container"> <div class="main"> <div class="left"> <header> <div class="header-logo"> <a href="#none"><img src="images/logo-b4-header.png" alt=""></a> </div> <div class="navi"></div> <div class="sub-menu"></div> </header> </div> <div class="right"> <div class="slide"> <div class="slide-items"> <div class="slide-items-img"> <a href="#none"><img src="images/slide-d-01.jpg" alt=""></a> </div> </div> <div class="slide-banner"> <a href="#none"><img src="images/banne-a1-02.jpg" alt=""></a> </div> </div> <div class="item1"> <div class="shortcut"></div> </div> <div class="item2"> <div class="news"></div> </div> </div> </div> <footer> <div class="footer-logo"></div> <div class="copyright"></div> <div class="sns"></div> </footer> </div> <script src="script/jquery-1.12.4.js"></script> <script src="script/custom.js"></script> </body> </html>ovject-fit:cover;했는데 이미지가 유동적으로 변하지 않아서 글을 올립니다 창 넓이를 늘리면 슬라이드창에 맞춰 이미지 크기가 변해 붙지 않고 공백이 생겨납니다
-
미해결[신규 개정판] 이것이 진짜 크롤링이다 - 실전편 (인공지능 수익화)
셀레니움으로 접근할 수 없는 경우
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 상황1) 동적 페이지여서 셀레니움을 사용하려고 했음2) 셀레니움으로 접근 시 '사람임을 확인하라'는 메시지만 뜨고 더 이상 작업을 할 수 없음 이런 경우에는 아래 방법으로 진행을 해야 할까요?1) 크롤링 원하는 페이지에 접속2) 개발자 도구에서 Copy > Copy Element 로 HTML 코드 복사3) HTML 코드에서 원하는 부분을 추출하는 파이썬 코드를 사용4) 1~3 과정을 반복해서 봐야 하는 페이지가 많다면 자동화할 수 있는 방법이 있을지?