묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)
print(dir(csv))
55번째 줄을 출력했는데 저는 강사님처럼 속성 중에 OrderedDict이 안나와요,,,
-
미해결실시간 트렌드 홈페이지 개발(파이썬 크롤링 + Flask)
저에게 딱 필요했던 강의 였어요~!
우선 감사 인사를드립니다. 딱 필요한 절차에 대해서 공부할수 있는 기회가 되었습니다.흥미를 갖고 더 열심히 공부해 나갈 수 있을것 같습니다. 한가지 질문을 드립니다. 마지막 수업인 스크롤 + 크롤링 후 웹페이지에 보여주는 코드를 실행 하면 웹페이지에서 네이버 쇼핑으로 넘어가면서.. Internal Server Error The server encountered an internal error and was unable to complete your request. Either the server is overloaded or there is an error in the application. 다음과 같은 오류를 마주하게 되는데요. 너무 많은 요청이라는 것인데 문제는 웹페이지와 연동 없이(플라스크 사용안하고) 그냥 스크롤+ 크롤링 코드만 빼서 터미널에 출력하는 형태로 하면 아주 잘 됩니다. 그리고 예제보다 더 과도한 요청을 하는 크롤링도 잘 작동 합니다. 웹페이지에 보여주는것에 문제가 있는것 같습니다. 뭔가 오타가 있나 싶어서 강사님 블로그에서 다운 받은 후 실행을 시켜봐도 동일한 오류가 발생 됩니다. 이부분을 어떻게 해결 하면 좋을지 궁금 합니다. 감사합니다.
-
해결됨자바 ORM 표준 JPA 프로그래밍 - 기본편
@GeneratedValue 질문입니다.
안녕하세요 김영한 선생님 '프록시와 연관관계 관리 - 영속성 전이(CASCADE)와 고아 객체' 강의를 수강하는 중, 해당 강좌의 7분 58초 부분에 @GeneratedValue에 의해 생성된 PK 값에 대한 질문입니다. 질문: "단일 소유자(엔티티, 부모)인 PARENT에 완전 종속이 되는 CHILD이기 때문에, child 엔티티 PK 값의 GeneratedValue 또한 parent로 부터 영향을 받는가요?" 이와 같은 질문은 다음의 과정들로 인해 가지게 되었습니다. 강좌에서 생성된 parent 엔티티의 PK는 1, 그리고 각각의 child 엔티티의 PK는 2와 3이 할당(Generated)되었습니다. 저는 'PARENT와 CHILD는 서로 다른 테이블이기 때문에, parent 엔티티의 PK 값은 1이 할당되고, 각각의 child 엔티티 PK 값은 1과 2가 할당되어야 하는 것이 아닌가?' 라는 궁금증이 생겼습니다. 이를 확인하기 위해 다음과 같이 수행해 보았으며 사진과 같은 결과를 얻었습니다. parent PK: 1, 4child PK: 2, 3, 5, 6 이러한 결과로 인해, 위의 질문과 같은 정리를 하였는데 제가 제대로 이해한 것이 맞을까요? (+) 코드 내의 주석처리한 m.t. (= my thought) 부분 또한 제가 제대로 이해한 것이 맞을까요? ====== 그리고, 좋은 강의 너무 감사드립니다.
-
미해결홍정모의 따라하며 배우는 C언어
6.16 6.16 배열과 런타임 에러 강의 전에 배열을 배운적이 있었나요?
6.16 6.16 배열과 런타임 에러 강의 8분 58초쯤에 '혹시 배열에 아직 익숙하지 않으신 분들...' 이라고 하심은 본 강좌의 6.16강 이전에 배열수업을 했다는 말씀이신지요? 제가 눈이 작아서인지 목차에서는 찾을수가 없습니다. 이 강좌가 초보도 "따라하며 배우는 " 강좌인지 어느선까지 알고 결제했어야 하는 강좌인지 혼란스럽습니다.
-
미해결React로 NodeBird SNS 만들기
제로초님~
씨퀄라이저 에서 데이터를 같이 가져 올떄는 join문을 사용 하라고 도움을 주셔서 join문을 공부 하고 있습니다. 제가 지금 짠 query는 SELECT Post.id, Post.content, Post.createdAt, Post.updatedAt, Post.UserId, Post.RetweetId, `User`.`id` AS `User.id`, `User`.`nickname`, `Likers->Like`.`UserId` FROM Posts AS Post LEFT OUTER JOIN Users AS USER ON Post.UserId = User.id LEFT OUTER JOIN ( `Like` AS `Likers->Like` INNER JOIN `Users` AS `Likers` ON `Likers`.`id` = `Likers->Like`.`UserId`) ON `Post`.`id` = `Likers->Like`.`PostId` ORDER BY `Post`.`createdAt` DESC LIMIT 10 이런 형태로 결과는 이런식으로 다 붙어서 나오고 있습니다. 그런데 서큘에서 한 결과 물을 봤을때 해당 글의 id별로 likers로 구분지어서 나오더라구여 어떻게 하면 이런식으로 구분 지어 질수 있는 지 알수 있을까요?! group by를 사용 해야 하나요?
-
해결됨자바스크립트 중고급: 엔진 핵심
파라미터 질문입니다.
var obj = {}; obj.getTotal = function(one, two, two) { console.log(one + two); }; obj.getTotal(11, 22, 55); // obj.getTotal(11, 22, 55); == 66 //아래와 같다고 가정하고 정리했습니다. // ex ==> function test() { var obj = {}; obj.getTotal = function(one, two, two) { console.log(one + two); }; obj.getTotal(11, 22, 55); }; test() ; // test() 호출 // var obj 변수 선언 && undefind 할당 // var obj = {} 객체 리터럴 생성 && 빈 객채 할당 // obj.getTotal 프로퍼티 생성 && undefind 할당 // obj.getTotal = function (one, two, two){} 할당 && function 객체 생성 // funtion () /one, two, two ==> arguments 생성 arg[0] => one / arg[1] => two ? arg[2] => two // obj.getTotal(11, 22, 55) 인자 전달 && 호출 // 선언적 환경레코드에 파라미터 값 설정 {one : 11, two: 22, two:55} // 같은 이름이 있으면 대체 two:22 ==> two: 55 // console.log(one + two) ==> 66 /** *일단 강의 내용대로 정리를 해봤습니만 레코드라는 부분이 이해가 잘 가지않아 선언적 환경 레코드나 정적 환경 레코드와 같은 부분과 binding 개념도 정리가 되지 않아 공식 문서를 제외하고 참조 할수 있는 내용이 따로 있는지 여쭤 보고 싶습니다. / 인사이드 자바스크립드 같이 보고있습니다. 그리고 var obj = {}; obj.getTotal = function(one, two,) { return one + two }; obj.getTotal(11, 22. 77) 에서 77의 경우에는 index = 0: 77 이렇게 할당이 되는 건가요? */
-
미해결Vue로 Nodebird SNS 만들기
리트윗 에러 조언 부탁드립니다
테이블 지웠다가 다시 해 보기도 하고 깃헙 보고 리트윗 관련한 코드를 다 비교해 봤는데 답을 못 찾고 있네요.. where 문 들어간 부분을 확인 해도 오타같은 별 다른 문제점을 못 찾았어요 아래 오류메시지는 터미널, 콘솔, 네트워크 탭 오류메시지 이구요, 어느 지점에서 문제가 생긴건지 방향좀 잡아주실수 있을까요. original: Error: Unknown column 'Post.Retweet' in 'where clause' at Packet.asError (C:\Users\user\Desktop\Project\NodeBird\ch1\back\node_modules\mysql2\lib\packets\packet.js:712:17) at Query.execute (C:\Users\user\Desktop\Project\NodeBird\ch1\back\node_modules\mysql2\lib\commands\command.js:28:26) at Connection.handlePacket (C:\Users\user\Desktop\Project\NodeBird\ch1\back\node_modules\mysql2\lib\connection.js:417:32) at PacketParser.onPacket (C:\Users\user\Desktop\Project\NodeBird\ch1\back\node_modules\mysql2\lib\connection.js:75:12) at PacketParser.executeStart (C:\Users\user\Desktop\Project\NodeBird\ch1\back\node_modules\mysql2\lib\packet_parser.js:75:16) at Socket.<anonymous> (C:\Users\user\Desktop\Project\NodeBird\ch1\back\node_modules\mysql2\lib\connection.js:82:25) at Socket.emit (events.js:210:5) at addChunk (_stream_readable.js:309:12) at readableAddChunk (_stream_readable.js:290:11) at Socket.Readable.push (_stream_readable.js:224:10) at TCP.onStreamRead (internal/stream_base_commons.js:182:23) { code: 'ER_BAD_FIELD_ERROR', errno: 1054, sqlState: '42S22', sqlMessage: "Unknown column 'Post.Retweet' in 'where clause'", sql: 'SELECT `id`, `content`, `createdAt`, `updatedAt`, `UserId`, `RetweetId` FROM `Posts` AS `Post` WHERE `Post`.`UserId` = 2 AND `Post`.`Retweet` = 1 LIMIT 1;', parameters: undefined }, sql: 'SELECT `id`, `content`, `createdAt`, `updatedAt`, `UserId`, `RetweetId` FROM `Posts` AS `Post` WHERE `Post`.`UserId` = 2 AND `Post`.`Retweet` = 1 LIMIT 1;', parameters: undefined } SequelizeDatabaseError: Unknown column 'Post.Retweet' in 'where clause' at Query.formatError (C:\Users\user\Desktop\Project\NodeBird\ch1\back\node_modules\sequelize\lib\dialects\mysql\query.js:244:16) at Query.handler [as onResult] (C:\Users\user\Desktop\Project\NodeBird\ch1\back\node_modules\sequelize\lib\dialects\mysql\query.js:51:23) at Query.execute (C:\Users\user\Desktop\Project\NodeBird\ch1\back\node_modules\mysql2\lib\commands\command.js:30:14) at Connection.handlePacket (C:\Users\user\Desktop\Project\NodeBird\ch1\back\node_modules\mysql2\lib\connection.js:417:32) at PacketParser.onPacket (C:\Users\user\Desktop\Project\NodeBird\ch1\back\node_modules\mysql2\lib\connection.js:75:12) at PacketParser.executeStart (C:\Users\user\Desktop\Project\NodeBird\ch1\back\node_modules\mysql2\lib\packet_parser.js:75:16) at Socket.<anonymous> (C:\Users\user\Desktop\Project\NodeBird\ch1\back\node_modules\mysql2\lib\connection.js:82:25) at Socket.emit (events.js:210:5) at addChunk (_stream_readable.js:309:12) at readableAddChunk (_stream_readable.js:290:11) at Socket.Readable.push (_stream_readable.js:224:10) at TCP.onStreamRead (internal/stream_base_commons.js:182:23) POST /post/1/retweet 500 27.467 ms - 1528
-
미해결React로 NodeBird SNS 만들기
질문있습니다.
현재 다른프로젝트를 진행중입니다. axios를 이용해서 get방식으로 통신을 하려합니다. 보내는 부분은 제로초님이 설명해주신것처럼 리덕스 사가를 3단계를이용하였고 axios({ method:'get', url: 'http://54.180.186.62/api/boxoffice', data:Data, headers:{ headers: {'Content-Type': 'application/json'}, } }) 보내는 부분을 이렇게 작성하였습니다. 그리고 서버단은 req.body를 이용해서 받을려고 하는데 app.js부분에 express.json 과 encodeurl을 모두 작성하였 는데도 console.log(req.body.year)이런식으로 찍어보면 값이 undefiend로 뜹니다 axios에 전송하기전에 콘솔을찍으면 object{"year":2015}이런식으로 값은 잘 전송이 되는거같은 데 백단으로 넘어가면 값이 전부 없어져버립니다 get방식을 post방식으로 바꿔서 할때도 잘되었고 postman으로 하면 req.body.year가 잘출력되는것을 볼수있 는데 axios로 get방식으로만 통신하면 백단에서 값이 사라 져버리는 증상입니다
-
미해결노션(notion) 완벽 활용법
Full page 를 Inline으로 전환할수는 없을까요?
처음 생성 시 Full Page로 생성해서 사용을 했습니다. 교육과정을 보다 보니 같은 페이지내에서 다른 형태의 보드나 갤러리등으로 표시를 하려고하니 Full Page 옵션으로 인해서 안되는 것 같습니다. Inline으로 하면 한 공간에 여러 페이지를 볼 수 있던데 이것을 해결할 옵셔이나 방향이 있다면 알고 싶습니다. 좋은 강의를 항상 올려주셔서 감사합니다.
-
미해결파이썬 입문 및 웹 크롤링을 활용한 다양한 자동화 어플리케이션 제작하기
과제를 수행하는 코드가 작동은 하는데 오류를 뱉습니다.
좋은 강의 열심히 듣고 있습니다~ 다름이 아니라 과제로 다음 실시간 검색어 10개를 스크래핑 하는 코드를 작성했습니다. 검색어와 주소를 깔끔하게 출력하는데는 성공했는데 오류가 발생합니다. 코드와 오류 및 결과를 첨부하겠습니다. from bs4 import BeautifulSoupimport sysimport ioimport urllib.request as reqsys.stdout = io.TextIOWrapper(sys.stdout.detach(), encoding = 'utf-8')sys.stderr = io.TextIOWrapper(sys.stderr.detach(), encoding = 'utf-8')url = "https://www.daum.net"up = req.urlopen(url).read()soup = BeautifulSoup(up, 'html.parser')selector = "#mArticle > div.cmain_tmp > div.section_media > div.hotissue_builtin.hide > div.realtime_part > ol > li:nth-child({}) > div > div:nth-child(1) > span.txt_issue > a"def Print_Issue_And_Link(selector, num): #검색어를 출력 print(num, "위: ", soup.select_one(selector.format(num)).string) print("link: ", soup.select_one(selector.format(num)).attrs['href'])for i in range(1,21): Print_Issue_And_Link(selector, i)-------------------------------------------------------------------------------------------------------------/Users/sangsoohan/opt/anaconda3/envs/section2/bin/python /Users/sangsoohan/Documents/Programing_Project/Project_Moneyball/python_crawling/section2/daum_ontime_issue.py 1 위: 전광렬 link: https://search.daum.net/search?w=tot&q=%EC%A0%84%EA%B4%91%EB%A0%AC&DA=ATG&rtmaxcoll=1TH 2 위: 박술녀 link: https://search.daum.net/search?w=tot&q=%EB%B0%95%EC%88%A0%EB%85%80&DA=ATG&rtmaxcoll=1TH 3 위: 박희영 link: https://search.daum.net/search?w=tot&q=%EB%B0%95%ED%9D%AC%EC%98%81&DA=ATG&rtmaxcoll=1TH 4 위: 차준환 link: https://search.daum.net/search?w=tot&q=%EC%B0%A8%EC%A4%80%ED%99%98&DA=ATG&rtmaxcoll=1TH 5 위: 25번째 코로나 환자 link: https://search.daum.net/search?w=tot&q=25%EB%B2%88%EC%A7%B8+%EC%BD%94%EB%A1%9C%EB%82%98+%ED%99%98%EC%9E%90&DA=ATG&rtmaxcoll=1TH 6 위: 유승민 link: https://search.daum.net/search?w=tot&q=%EC%9C%A0%EC%8A%B9%EB%AF%BC&DA=ATG&rtmaxcoll=1TH 7 위: 시흥시 매화동 link: https://search.daum.net/search?w=tot&q=%EC%8B%9C%ED%9D%A5%EC%8B%9C+%EB%A7%A4%ED%99%94%EB%8F%99&DA=ATG&rtmaxcoll=1TH 8 위: 최혜진 link: https://search.daum.net/search?w=tot&q=%EC%B5%9C%ED%98%9C%EC%A7%84&DA=ATG&rtmaxcoll=1TH 9 위: ufc link: https://search.daum.net/search?w=tot&q=ufc&DA=ATG&rtmaxcoll=1TH 10 위: 인교진 link: https://search.daum.net/search?w=tot&q=%EC%9D%B8%EA%B5%90%EC%A7%84&DA=ATG&rtmaxcoll=1TH Traceback (most recent call last): File "/Users/sangsoohan/Documents/Programing_Project/Project_Moneyball/python_crawling/section2/daum_ontime_issue.py", line 22, in <module> Print_Issue_And_Link(selector, i) File "/Users/sangsoohan/Documents/Programing_Project/Project_Moneyball/python_crawling/section2/daum_ontime_issue.py", line 18, in Print_Issue_And_Link print(num, "위: ", soup.select_one(selector.format(num)).string) AttributeError: 'NoneType' object has no attribute 'string' Process finished with exit code 1
-
미해결남박사의 파이썬 기초부터 실전 100% 활용
디지털시계 만들기에서 질문있습니다!
제가 공부시간측정하는 프로그램을 만들려고 하는데, 현재 시간말고 00:00:00부터 시작하도록 하고싶습니다. 갖은방법을 써보았으나 QtCore.QTime.currentTime()를 쓰지않고 빼기연산으로 시간을 측정시 연산시간떄문에 부정확하여 구글링을 해보니 아예 다른코드뿐이라 이해가 되지않아 질문드립니다 from PyQt5 import QtWidgets from PyQt5 import QtCore class MyClock(QtWidgets.QWidget): def __init__(self): super().__init__() self.mouseClick = False self.setWindowTitle("시계") self.initWidgets() self.setFixedSize(250, 100)#사이즈고정 self.setWindowFlags(QtCore.Qt.FramelessWindowHint)#타이틀바 없앰 self.show() def keyPressEvent(self, e):#esc누르면 종료 if e.key() == QtCore.Qt.Key_Escape: self.close() def mousePressEvent(self, e):#마우스로 창 누를때 if e.button() == QtCore.Qt.LeftButton:#좌클릭시 self.mouseClick = True self.oldPos = e.globalPos()#x,y가 튜플형태로 넘어옴 #globalPos=윈도우상의 x,y좌표 def mouseReleaseEvent(self, e): self.mouseClick = False def mouseMoveEvent(self, e):#마우스로 창 누른뒤 이동시킬때 if self.mouseClick: delta = QtCore.QPoint(e.globalPos() - self.oldPos) self.move(self.x() + delta.x(), self.y() + delta.y()) self.oldPos = e.globalPos() def initWidgets(self): self.layout = QtWidgets.QVBoxLayout()#QV=가로 QH=세로 self.lcd = QtWidgets.QLCDNumber()#시계디자인 위젯 self.lcd.setSegmentStyle(QtWidgets.QLCDNumber.Flat)#글자평평하게 self.lcd.setDigitCount(8)#글자 총 8개까지 보여줌(hh:mm:ss) self.lcd.setFrameStyle(QtWidgets.QFrame.NoFrame)#박스없앰 self.timer = QtCore.QTimer()#타이머 생성 self.timer.timeout.connect(self.show_time)#타임아웃 이벤트를 show_time과 연결 #정한 시간이 지날때마다 show_time 실행 self.timer.start(1000)#1초에 한번씩 self.show_time() self.layout.addWidget(self.lcd) self.setLayout(self.layout) def show_time(self): time = QtCore.QTime.currentTime()#현재시간 self.currentTime = time.toString("hh:mm:ss")#모양을 만듬 self.lcd.display(self.currentTime) app = QtWidgets.QApplication([]) win = MyClock() app.exec_() app.exec_()
-
미해결자바스크립트 중고급: 엔진 핵심
정리시간 질문입니다.
function book() { function get() { return point; }; var point = 123; return get(); }; console.log(book()); 실행 컨텍스트{ 렉시컬 환경 컴포넌트{ 환경 레코드: { point: 123 } 외부 렉시컬 환경 참조: { } } 변수 환경 컴포넌드 { } this bind 컴포넌트 } 이렇게 되는게 맞나요?
-
미해결Node.js 교과서 - 기본부터 프로젝트 실습까지
Node.js 교과서를 마무리 짓고 리액트로 넘어가려는데요
현재 유투브에서 촬영중인 타입스크립트+리액트로 리액트를 입문해도 상관없는건가요? 동일한 내용을 다루시는건가요?
-
미해결프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)
강의자료가 없어요
수업을 진행 하려면 강의자료가 있어야 되는데 강의자료 파일 안에 아무것도 없다고 나오네요ㅠ 어떻게 해야 되나요?
-
미해결C++ Let's Make Games
else if
else if 예재했을떄 if 조건은 제외되니까 and 연산자를 사용하지 않아도 되지않나요
-
미해결C++ Let's Make Games
조건붙일때
어처피 0이아닌숫자는 다 트루로 인식되는데. != 0 을 붙일필요가 있나요?
-
미해결프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)
노트북소리를 멕시멈으로 하여도 소리가 안 들려요?
노트북 소리를 멕시멈으로 하여도 소리가 잘 안들려요 그래서 수강 할수 없어요. 청각 장애도 있고요 자막 처리가 안될까요
-
해결됨스프링 웹 MVC
SessionStatus Interface에 대한 고찰입니다.
안녕하세요. '핸들러 메소드 8부 - @SessionAttributes' 강의를 듣고, Spring에서 제공하는 @SessionsAttributes 어노테이션, SessionStatus Interface는 HttpSession을 좀 더 편리하게 사용 할 수 있는 도구라고 생각이 들었습니다. 강의 후반부에 나오는 SessionsStatus Interface에 대해 세 가지 궁금증이 생겨 글을 남깁니다. 첫 번째 만약, 메소드 실행 후 Session에 담긴 특정 객체(Attribute)를 제거해야 할 때 HttpSession이 제공하는 removeAttribute() 또는 invildate() 메소드가 아닌, SessionStatus의 setComplete()을 사용하는 이유는 Spring이 제공하는 도구를 활용하기 위한 목적이라고 보면 될까요? (이 두 인터페이스의 공통점은, 사용 전에 메소드 파라미터로 설정이 되어야 한다는 점이겠네요.) 두 번째 SessionsStatus interface는 단지 '메소드 선언'만 되어 있어서 setComplete() 메소드가 어디서 '오버라이드' 되어 동작을 하는 것인지에 대한 궁금증입니다. 내용은 아래와 같습니다. SessionStatus의 setComplete() 메소드를 호출하게 되면 Session에 담긴 모든 객체가 비워지게 되는 것인지, @SessionAttributes 어노테이션에서 지정한 객체에 대해서만 제거가 되는 것인지 궁금합니다. (지졍한 객체라 함은, 강의에서는 'event' 객체가 되겠네요.) 세 번째 기본적인 질문일 수도 있겠습니다. 대게 회원 로그인 처리 후 다른 페이지에서도 회원 정보를 접근 가능 하도록 Session에 회원정보를 담게 됩니다. 가령 개발자의 실수로 '세션에 있는 회원정보를 제거하면 안되는 어느 메소드'에서 회원정보를 지우는 작업을 했을때 '이 코드(회원정보를 지우는 작업)는 여기서 실행되면 안돼.' 라는 의미로 예외를 발생시키는 코드 패턴이 있을까요?
-
해결됨파이썬 사용자를 위한 웹개발 입문 A to Z Django + Bootstrap
vps와 웹서버 차이
안녕하세요. 이전에 비슷한 질문이 있어 연장선상에서 질문드립니다. vps가 가상사설'서버'이고 여기에 프로젝트를 올릴때(debug=false) static과 media파일이 깨지는 현상에 대해 따로 웹서버를 설정해주는 것이 정석이라는 답변을 보았습니다. 여기서 vps가 서버인데 왜 따로 웹서버가 또 필요한가에 대해 의문이 들어 서버의 종류 및 vps에 관해 구글링해봤으나 명확한 차이점을 모르겠습니다. vps에 웹서버 이미지서버 db서버가 다 구축된게 아니라면 정확히 어떤 종류의 서버인지 궁금함니다,,,,,,, vps에 올렸을때 만들었던 블로그 뼈대?같은것들은 정상적으로 작동이되는데 그럼 웹서버가 정상적으로 작동한게 아닌가요?
-
미해결실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
api개발고급;컬렉션조회 최적화 챕터 -> 주문조회V5 강의
안녕하세요. 실무에서는 setter 열어두면 안된다고 하셨는데, 아래 코드의 경우, setOrderItems을 어떻게 대체 해야 하나요? 감사합니다. result.forEach(o -> o.setOrderItems(orderItemMap.get(o.getOrderId())));