[리뉴얼] 파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
강사가 실제 사용하는 자동 프로그램 소개 필요한 프로그램 설치 시연 데이터를 엑셀 파일로 만들기 엑셀 파일 이쁘게! 이쁘게! 나대신 주기적으로 파이썬 프로그램 실행하기 파이썬으로 슬랙(slack) 메신저에 글쓰기 웹사이트 변경사항 주기적으로 체크해서, 메신저로 알람주기 네이버 API 사용해서, 블로그에 글쓰기 자동으로 쿠팡파트너스 API 로 가져온 상품 정보, 네이버 블로그/트위터에 홍보하기 위와 같이 크롤링된 결과에 대해서, 4~5행의 앞부분의 공란을 없애주기 위해서 아래와 같이 코딩을 합니다. import requests from bs4 import BeautifulSoup res=requests.get("https://davelee-fun.github.io/blog/crawl_test") soup=BeautifulSoup(res.content, "html.parser") section=soup.find("ul", id="dev_course_list") titles=section.find_all("li", class_="course") for i in titles: print(i.get_text().split("[")[0].split("-")[1].strip()) 강의 내용에서 strip(" ")이나 strip(' ')으로 하나, strip()으로 하나, 똑 같은 결과라고 설명하셨는대요 실제로 strip(' ')이나, strip(" ")으로 하면, 4~5행의 앞부분의 공백이 없어지지 않습니다. 이건 왜 그럴까요?
데이터 전처리 강의 14:50 관련하여, X_train['workclass']의 최빈값과 X_test['workclass']의 최빈값이 달라질 수 있는데 train 데이터와 test 데이터를 서로 다른 최빈값으로 결측치를 채워도 되나요? 제 생각에는 train과 test를 합쳐서 최빈값을 찾고, 그값으로 결측치를 채워야 하지 않나 싶습니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문 전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 여기서 catch 부분에 break가 왜 필요한건가요? "q" 를 입력하면 printerThread 에 인터럽트를 걸고 while문의 !Thread.interrupted가 false가 되어서 while문을 탈출하는게 아닌가요? 아니면 !Thread.interrupted가 false가 되기 전에 먼저 예외를 잡아서 인터럽트가 true에서 false로 먼저 되어서 !Thread.interrupted가 true가 되는건가요?
질문은 동영상 강의에 들어가서 오른쪽에 커뮤니티 버튼을 통해 해주세요. 그래야 어떤 강좌에서 질문하셨는지 알 수 있습니다. 영상에서 몇 분 몇 초 대를 알려주셔야 제가 한 번에 질문 내용 확인이 가능합니다. 이미 다른 누군가가 질문을 한 이력 이 있을 수 있습니다. 질문 게시판을 한 번 확인 부탁드립니다. 학교의 과제나 타 강사의 코드 등 외부 수업 자료에 대해서는 답변하지 않습니다. 제가 다루는 커리큘럼 외의 이론이나, 너무 디테일한 컴퓨터 이론에 대해서는 답변 드리지 않습니다. 시험에 안 나오는 경우가 많고, 나와 봤자 1문제 나오는데 외워야 할 부분이 많은 것 등 (예시: 서브넷 마스크 계산) 질문을 올릴 때 이 글은 모두 지우고 내용을 입력해주세요.
class Order(models.Model): ... products = models.ManyToManyField( Product, blank=False, ) ... 그럴 가능성은 드물지만 Product 수량은 1개로만 주문 가능하고 상품이름과 가격이 변동 불가하다고 하였을 때( 1개 주문시, 품절 되는 상품)는 별도의 OrderedProduct 클래스 없이 위와 같이 구현해도 무방한가요? class OrderedProduct(models.Model): order = models.ForeignKey( Order, on_delete=models.CASCADE, db_constraint=False, ) product = models.ForeignKey( Product, on_delete=models.CASCADE, db_constraint=False, ) ... 따로 OrderedProduct 클래스에 FK로 order와 product를 두신건 이름/가격 정보의 변경 가능성, 2개이상의 수량 선택 문제를 해결하기 위함과 향후에 추가적인 모델의 유연성 때문에 이렇게 설계 해두신걸까요?
제목 갯수만큼 총괄표 끼워넣기 실습 중에 아래와 같은 메시지가 나옵니다. 선생님께서 제공한 실습 파일 버전이 높고, 저는 한글 2020 버전으로 낮아서 "문서끼워넣기" 작업 간에 아래 메시지가 뜨는 것 같습니다. 그래서 배운데로 아래와 같이 제공해주신 코드를 수정했습니다. SetMessageBoxMode() 인자로 확인 버튼 클릭하는 것( 0x00000001 )을 넣었는데도 계속 경고 창이 뜹니다. for i in range(len(지역학교명_리스트)): # print(i) 지역명 = 지역학교명_리스트.iloc[-1-i]['지역명'] 학교명 = 지역학교명_리스트.iloc[-1-i]['학교명'] hwp.SetMessageBoxMode(0x00000001) # 높은 버전 문서 붙여 넣기 시 뜨는 메시지 박스 제거(확인) 문서끼워넣기(filename) hwp.SetMessageBoxMode(0x0000000F) # 초기화 hwp.RenameField("사진", 학교명) # '사진' 필드 이름 변경 hwp.Run("Delete") # 커서가 위치한 곳에 어떻게 해결할 수 있을까요?
2024-10-02T00:24:30.390+09:00 ERROR 17692 --- [hi-spring] [nio-8080-exec-9] o.a.c.c.C.[.[.[/].[dispatcherServlet] : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed: java.lang.NullPointerException: Cannot invoke "String.equals(Object)" because the return value of "com.example.hi_spring.domain.Member.getName()" is null] with root cause java.lang.NullPointerException: Cannot invoke "String.equals(Object)" because the return value of "com.example.hi_spring.domain.Member.getName()" is null at com.example.hi_spring.repository.MemoryMemberRepository.lambda$findByName$0( MemoryMemberRepository.java:31 ) ~[classes/:na] at java.base/ java.util.stream .ReferencePipeline$2$1.accept( ReferencePipeline.java:178 ) ~[na:na] 회원가입에서 이름 입력 이 후 두번째부터 회원가입 등록 시 위와 같은 오류메세지가 나타납니다. 회원목록 화면으로 가보아도 처음에 정상적인것처럼 등록한 이름도 나오지 않고, #이름 위와 같은 화면으로 숫자만 생성되어 있고 빈칸으로 나옵니다. 오류메세지에서는 findByName 부분이 잘못 되어졌다고 나오는데 오류원인이 무엇인지 모르겠습니다. 도움부탁드립니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 회원가입 테스트는 성공했는데 중복회원예외에서 테스트가실패합니다
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 오류가 나는 이유를 모르겠습니다,, ㅜ jdbc는 코드 따라치지않았구 jpa부터 코드작성했습니다
질문하기가 굉장히 어려운데 21분 45초경에 Sum: as.sum(5) 를 출력하는 문제입니다.. 여기서 이미 Sum:은 출력되어 있는 상태에서 as.sum(5)를 출력해야하는 것 아닌가여..? 예를 들어서 Sum: Add 5 Add4 Add3 Add2 Add1 Add0 15 이런식으로여.. 어떤게 먼저 나와야하는지 헷갈리네요 ㅠㅠㅠ
package Algorithm; import java.util.*; public class 암호 { public String solution(int n ,String s) { String answer = ""; for(int i=0; i<n; i++){ s = s.substring(0,7).replace('#','1').replace('*','0'); int num = Integer.parseInt(s,2); // 2 진수로 들어온 것을 10진수로 변경하는 방법 문자열 -> 숫자 answer += (char)num; s=s.substring(7); // 끝까지 나오기! // substring (인덱스 해당 , 인덱스 해당 안됨) } return answer; } public static void main(String[] args) { 암호 t = new 암호(); Scanner kb = new Scanner(System.in); int n = kb.nextInt(); String str = kb.next(); System.out.println(t.solution(n, str)); } } 혹시 이렇게 풀면 왜 틀리는 건가요...? 감사합니다! Exception in thread "main" java.util.InputMismatchException at java.base/java.util.Scanner.throwFor( Scanner.java:939 ) at java.base/ java.util.Scanner.next ( Scanner.java:1594 ) at java.base/java.util.Scanner.nextInt( Scanner.java:2258 ) at java.base/java.util.Scanner.nextInt( Scanner.java:2212 ) at Algorithm.암호.main( 암호.java:23 )