inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

173만명의 커뮤니티!! 함께 토론해봐요.

셀레늄 실습중 문의

해결됨

실습으로 끝장내는 웹 크롤링과 웹 페이지 자동화 & 실전 활용

수업을 듣고 다른 사이트로 실습을 해보려고 하는데, jsp로 만들어진 공공기관 사이트는 뭔가 잘 안먹히는 모습니다. 아래 사이트의 테이블 정보를 가져오고 싶은데, 얘네들은 클릭해도 주소가 변경되는것도 없고 아래와 같이 table이 들어있는 상위 class 태그를 찾아서 정의하고, 거기에서 table의 class명을 넣고 tbody, tr까지 찾아들어가도록 코딩을 했는데 table의 class명이 없다고 에러가 뜹니다. 이런 사이트의 table내 정보는 어떻게 가져올 수 있고, 테이블에 있는 원자재를 클릭해서 넘어가는 페이지는 어떻게 찾아갈 수 있나요?(XPATH, LINK_TEXT해도 먹히지 않아요..) https://www.motie.go.kr/motie/py/sa/todayeconomyindexprice/todayEconomyIndexPri.jsp url = "http://www.motie.go.kr/motie/py/sa/todayeconomyindexprice/todayEconomyIndexPri.jsp" driver.get(url) time.sleep(2) # driver.find_element(By.LINK_TEXT,"통계정보").click() # time.sleep(2) # driver.find_element(By.LINK_TEXT,"원자재가격정보") # time.sleep(2) class1 = driver.find_element(By.CLASS_NAME,"iframeLayout01") #테이블은 위와 같이 <table>안에 <tbody>, <tbdoy>안에 <tr>, <tr>안에 <td> 순으로 포함되어 있다. table_content = class1.find_element(By.CLASS_NAME,"data_print") tbody = table_content.find_element(By.TAG_NAME,"tbody") rows = tbody.find_elements(By.TAG_NAME,"tr") for index, value in enumerate(rows): body=value.find_elements(By.TAG_NAME,"td")[0] print(body.text)

  • 웹-크롤링
  • python
  • 웹-크롤링
  • selenium
  • beautifulsoup
쥰쓰 댓글 1 좋아요 0 조회수 834

mysql 1064에러

미해결

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] h2말고 기존 mysql을 설치한게있어 heidisql을 이용하여 강의자료 코드 복붙하였습니다. 계속 1064 신택스 에러가 떠서 찾아봐도 해결이 되지않아 직접 생성했는데 아래처럼 해도 상관없나요?

  • spring
  • java
  • MVC
  • spring-boot
나마스테 댓글 1 좋아요 0 조회수 622

getter setter 질문

미해결

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 마지막 8분 22초에서 System.out.println 으로 member의 getName을 찍어서 확인하는데 Form html에서 input name을 name="name"이 아닌 name="asd"로 변경후 Form class에서도 private String name을 private String asd로 바꾸고 getter에서 return도 name->asd로 변경했습니다 이때 메서드명은 getName() 그대로 남겼는데 sout(시스템아웃프린트)로 찍어보니까 null이 뜹니다. 메서드명을 getAsd()로 바꾸니까 정상적으로 작동이 되구요 게터와 세터 메서드명을 꼭 변수의 이름과 맞춰야하는건가요? 이유가뭔가요?

  • spring-boot
  • spring
  • java
  • MVC
나마스테 댓글 1 좋아요 0 조회수 501

save() 메서드 반환 타입

미해결

스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] MemberRepository의 save() 메서드는 반환 타입이 Member인 이유가 있을까요? 저장하는 기능이라서 void로 해도 괜찮다고 생각하는데 테스트를 편리하게 하기 위함인가요? 아니라면 다른 이유가 있는지 궁금합니다.

  • MVC
  • spring
hjm2530 댓글 1 좋아요 1 조회수 420

{% for i in range(block_start, block_last + 1 ) %} 에서

미해결

남박사의 파이썬으로 실전 웹사이트 만들기

{% for i in range(block_start, block_last + 1 ) %} 에서 block_last + 1을 해주는 이유가 궁금합니다.

  • python
날아라숑 댓글 2 좋아요 0 조회수 422

http://localhost:8080/hello-mvc?name=Spring 오류

해결됨

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

똑같이 한 거 같은데 오류가 뜨네요,,,

  • java
  • spring
  • spring-boot
  • MVC
모깅 댓글 2 좋아요 0 조회수 1201

http://localhost:8080/hello 로그인 ㅠㅠ

미해결

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. http://localhost:8080/hello 에 들어가면 로그인이 하라는 창이 뜨구요 취소 시 Unauthorized 이렇게 뜹니다. ㅠㅠ 프로젝트 새로 만들어도 똑같아서요 build.gradle 에 들어가도 시큐어리티가 없네요 ㅠㅠ

  • spring-boot
  • MVC
  • java
  • spring
박혜란 댓글 1 좋아요 0 조회수 774

suggestion에서 onFollowUser을 수행할때 에러 질문입니다!

해결됨

파이썬/장고 웹서비스 개발 완벽 가이드 with 리액트

import React from "react"; import { Button, Avatar } from "antd"; import "./Suggestion.scss"; //프레젠테이션 컴포넌트라 할 수 있다 export default function Suggestion({ suggestionUser, onFollowUser }) { const { username, avatar, is_follow } = suggestionUser; return ( <div className="suggestion"> <div className="avatar"> <Avatar icon={<img src={avatar} alt={`${username}'s avatar`} />} /> {/* <UserAddOutlined /> */} </div> <div className="usesrname">{username}</div> <div className="action"> {is_follow && "팔로잉 중"} {!is_follow && ( <Button size="small" onClick={() => onFollowUser(username)}> Follow </Button> )} </div> </div> ); } import React, { useEffect, useState } from "react"; import "./SuggestionList.scss"; import { Card } from "antd"; import Suggestion from "./Suggestion"; import { useAppContext } from "store"; import Axios from "axios"; import useAxios from "axios-hooks"; export default function SuggestionList({ style }) { const { store: { jwtAccessToken }, } = useAppContext(); const [userList, setUserList] = useState([]); //axios을 좀더 일반적으로 쓰기위한 훅을 이용 useAxios hook //useEffect자체가 필요없다 요청자체를 useAxios가 보내게 되니까? //useAxios는 조회를 할때는 유용한다 post을 할때는 코드가 복잡해진다? const headers = { Authorization: `Bearer ${jwtAccessToken}` }; const [{ data: origUserList, loading, error }, refetch] = useAxios({ url: "http://127.0.0.1:8000/accounts/suggestions/", headers, }); useEffect(() => { if (!origUserList) setUserList([]); else setUserList(origUserList.map((user) => ({ ...user, if_follow: false }))); }, [origUserList]); const onFollowUser = (username) => { console.log("성공"); try { Axios.post( "http://127.0.0.1:8000/accounts/follow/", { username }, { headers } ) .then((response) => { setUserList((prevUserList) => { return prevUserList.map((user) => { if (user.username === username) { return { ...user, is_follow: true }; } else return user; }); }); }) .catch((error) => { console.log(error); }); } catch (error) { console.log("여기 에러야 :", error); } }; return ( <div style={style}> {/* 정말 빠르게 지나갈 것이다 */} {loading && <div>Loading...</div>} {error && <div>로딩중에 에러가 발생했습니다.</div>} {/* <button onClick={() => refetch()}>Reload</button> */} <Card size="small" title="Suggestions for you" // extra={<a href="#">More</a>} style={{ width: 300, }} > {userList.map((suggestionUser) => ( <Suggestion key={suggestionUser.username} suggestionUser={suggestionUser} onFollowUser={onFollowUser} //속성값으로 주입함 /> ))} </Card> </div> ); } 첫번째 블럭이 Suggestion.js이고 두번째 블럭은 SuggestionList.js입니다. follow 버튼을 눌렀을때 이러한 에러가 뜨기 시작했는데 왜 그런걸까요ㅠㅠ 분명 원래는 잘 되었는데 학습진도를 더 나가다 보니 어느순간 작동하지 않던데 그 이유를 잘 모르겠습니다 서버쪽으로 요청도 가지 않는거 같은데 서버쪽의 문제일 수 있을까요??

  • docker
  • django
  • python
  • react
꺼넝 댓글 1 좋아요 0 조회수 477

self

해결됨

코딩테스트 [ ALL IN ONE ]

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 노드를 구현할때, 함수의 변수안에 self가 있는데 이게 어떤 역할을 하는지 궁금합니다.

  • python
  • algorithm
  • 코테 준비 같이 해요!
kyle3444 댓글 1 좋아요 2 조회수 654

하이퍼 파라미터 튜닝 범위

미해결

[개정판] 파이썬 머신러닝 완벽 가이드

안녕하세요! 수업 잘 듣고 있습니다. 제가 지금 질문이 생긴 범위는 xgboost나 lightgbm들 하이퍼 파라미터 튜닝시 max_depth나 min_child_weigh등 각각의 범위를 지정해주는데 (ex) 학습률이나, hp.quniform('max_depth',5,20,1) 이런 범위들은 문제마다 다르게 설정해주어야 하는건 알겠는데 제가 나중에 새로운 문제를 혼자 풀 때 어떤수치를 보고 파라미터 범위들을 설정해주어야하는 걸까요??

  • 머신러닝 배워볼래요?
  • 통계
  • python
kd03100 댓글 1 좋아요 0 조회수 626

그냥 boolean을 사용하면 어떤 단점이 있을까요?

미해결

스프링 MVC 2편 - 백엔드 웹 개발 활용 기술

Boolean이 아닌 boolean을 사용하면 값이 없을 경우 null이 아닌 false로 자동 설정되는 것으로 알고 있습니다. boolean으로 설정하면 hidden을 사용할 필요 없이 편하게 쓸 수 있을 것 같은데 Boolean으로 쓰는 것에 비해 어떤 단점이 있나요?

  • spring
  • MVC
heehee 댓글 1 좋아요 0 조회수 780

ObjectError 오류 메시지 출력

해결됨

스프링 MVC 2편 - 백엔드 웹 개발 활용 기술

복습하던중 궁금한 점이 생겨 질문 남깁니다. 강의 교안 4. 검증1- Validation 의 29페이지에 내용을 보면, "타임리프가 화면을 렌더링할 때 th:errors 가 실행된다. 만약 이때 오류가 있다면 생성된 오류 메시지 코드를 순서대로 돌아가면서 메시지를 찾는다. 그리고 없으면 디폴트 메시지를 출력한다." 라고 되어있는데요. FieldError의 경우에는 타임리프의 th:errors 속성으로 특정 필드를 지정해줄 수 있기 때문에 위의 내용이 가능하다고 생각되는데, ObjectError의 경우에는 th:errors 처럼 특정 속성을 지정할 수 있는 오류가 아닌데, 템플릿 상의 어떤 요소를 토대로 어떻게 타임리프가 ObjectError의 오류 메시지 코드를 찾게 되는 것인가요?

  • MVC
  • spring
세승 댓글 1 좋아요 0 조회수 831

멜론편 진행하고 있는데 배너 닫는 버튼이 안보이네요.

미해결

실습으로 끝장내는 웹 크롤링과 웹 페이지 자동화 & 실전 활용

멜론편 진행하고 있는데 저는 상단에 배너가 떠서 강의 중 알려주신 대로 배너 닫는 버튼 클릭 추가하려고 하는데, 배너 닫는 버튼이 안보이네요. 이런 경우는 어떻게 해야될까요?

  • selenium
  • 웹-크롤링
  • python
  • beautifulsoup
Learner 댓글 2 좋아요 0 조회수 665

빌드 실행

미해결

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. spring boot 에 내장되어 있는 tomcat 말고 따로 설치되어 있는 tomcat 으로 서버가 돌아가는 거 같은데 계속 오류가 뜨네요 내장되어 있는 tomcat으로 빌드하고싶은데 설정을 어떻게 바꿔야할까요 ??

  • spring-boot
  • java
  • spring
  • MVC
도연 댓글 1 좋아요 0 조회수 685

spring data jpa를 적용했을 때 회원가입과 중복회원 확인 메소드 오류가 납니다.

해결됨

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 예 [질문 내용] 여기에 질문 내용을 남겨주세요. 코드는 강사님과 똑같이 작성했는데 Invalid property 'id' of bean class 라고 에러가 떴습니다. 제 생각엔 JpaRepository가 구현한 save 메소드가 setId를 해주지 못했거나 SpringDataJpaMemberRepository가 JpaRepository가 구현한 save 메소드를 주입을 못해준 거 같은데 어떻게 해결을 해야할지 모르겠어서 질문 올립니다ㅠㅠ Member.java 코드 @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; private String name; public long getId(){ return id; } public void setId(long id){ this.id = id; } MemberRepository.java 코드 package hello.hellospring.repository; import hello.hellospring.domain.Member; import java.util.List; import java.util.Optional; public interface MemberRepository { Member save(Member member); Optional<Member> findById(Long id); Optional<Member> findByName(String name); List<Member> findAll(); } SpringDataJpaMemberRepository.java 코드 package hello.hellospring.repository; import hello.hellospring.domain.Member; import org.springframework.data.jpa.repository.JpaRepository; import java.util.Optional; public interface SpringDataJpaMemberRepository extends JpaRepository<Member, Long>, MemberRepository { @Override Optional<Member> findByName(String name); } SpringConfig.java 코드 package hello.hellospring.service; import hello.hellospring.repository.*; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import javax.persistence.EntityManager; @Configuration public class SpringConfig { private final MemberRepository memberRepository; @Autowired public SpringConfig(MemberRepository memberRepository) { this.memberRepository = memberRepository; } @Bean public MemberService memberService() { return new MemberService(memberRepository); } } 에러 로그 org.springframework.beans.InvalidPropertyException: Invalid property 'id' of bean class [hello.hellospring.domain.Member]: Getter for property 'id' threw exception; nested exception is java.lang.reflect.InvocationTargetException 중략 Caused by: java.lang.NullPointerException at hello.hellospring.domain.Member.getId( Member.java:17 )

  • spring
  • java
  • MVC
  • spring-boot
김예찬 댓글 1 좋아요 0 조회수 1285

스프링이 제공하는 ExceptionResolver1

해결됨

스프링 MVC 2편 - 백엔드 웹 개발 활용 기술

강의 10분 49초에 포스트맨으로 에러 메시지를 받는 과정이 있는데, 따라해도 메시지가 나오지 않습니다. 설정한 메시지가 나오는 것이 아니라, 그냥 제이슨 내부에 메시지 항목 자체가 존재하지 않는데 어떻게 해야 하나요? @Slf4j @RestController public class ApiExceptionController { @GetMapping("/api/response-status-ex1") public String responseStatusEx1(){ throw new BadRequestException(); } } package hello.exception.exception; import org.springframework.http.HttpStatus; import org.springframework.web.bind.annotation.ResponseStatus; @ResponseStatus(code = HttpStatus.BAD_REQUEST, reason = "error.bad") public class BadRequestException extends RuntimeException { } error.bad=잘못된 요청 오류입니다. 메시지 사용

  • MVC
  • spring
asdqweasdzxcasd 댓글 3 좋아요 0 조회수 1053

http://localhost:8080/hello 404에러

해결됨

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 똑같이 따라한 것 같은데 에러가 뜨네요,, 뭐가 문제일까요ㅠㅠㅠ

  • spring-boot
  • MVC
  • spring
  • java
모깅 댓글 2 좋아요 0 조회수 814

Whitelabel Error Page 질문드립니다. 권우현님과 동일합니다.

미해결

스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 아니요 [질문 내용] 아래 권오현님과 동일한 현상인데 저는 mac 에서 발생하고 있습니다. 별도 특이사항 보이지 않으나 log-test 로 접속시 같은 문제가 지속적으로 발생하여 문의드립니다 :)

  • MVC
  • spring
정준호 댓글 5 좋아요 0 조회수 661

43강 jackson 메이븐

미해결

[NarP Series] MVC 프레임워크는 내 손에 [나프2탄]

안녕하세요. 메이븐에 jackson-mapper를 추가하신 이유는 스프링 버전이 낮아서 인가요? 다른 블로그를 찾아보니 jackson.core만 추가해도 되는 것 같더라구요. 감사합니다!!

  • MVC
  • spring
  • pojo
  • ajax
oniic 댓글 1 좋아요 0 조회수 367

프로젝트가 실행되지 않습니다.

미해결

스프링 MVC 2편 - 백엔드 웹 개발 활용 기술

form-start 폴더를 복사하고 form으로 이름을 바꾼 다음에 build.gradle 파일로 프로젝트를 열고 실행을 했는데 위와 같은 에러가 발생했습니다. 어떻게 해야 할까요 ㅠㅠ

  • MVC
  • spring
heehee 댓글 2 좋아요 0 조회수 1174

인기 태그

인프런 TOP Writers

주간 인기글