inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

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

선생님 질문 있습니다!

미해결

파이썬 입문 및 웹 크롤링을 활용한 다양한 자동화 어플리케이션 제작하기

안녕하세요 제가 만들어본 코드에서 도저히 안되는 부분이 있어서 질문 남깁니다.. 1. 첫번째 클래스에 있는 QtextBrowser에 현재상태가 표시되게 하고 싶은데 안됩니다... 전역변수에서 값을 받는건 되는거 같은데 두번째 클래스에서 첫번째 클래스로 값을 보내는 건 안되는 것 같더라구요.. 2. 다른 방법으로 현재 상태가 어떻다! 표시할 수 있는 방법은 없나요? 3.오류로 인한 PyQt5 창 닫는 건 어떻게 멈출 수 있을까요? 구글링 많이 해봤는데....도와주십시오...ㅠㅠㅠ import sys from PyQt5 . QtWidgets import * from selenium import webdriver from selenium . webdriver . common . keys import Keys import sys import time import pyperclip from PyQt5 . QtCore import * class MyApp ( QWidget ): def __init__ ( self ): super (). __init__ () self . initUI () def initUI ( self ): self . Qline = QLineEdit () self . Qline1 = QLineEdit () self . Qline1 . returnPressed .connect( self . append_text ) self . Qline2 = QLineEdit () self . Qline2 . returnPressed .connect( self . append_text1 ) self . Qline3 = QLineEdit () self . Qline3 . returnPressed .connect( self . append_text2 ) self . Browser = QTextBrowser () self . Browser . setAcceptRichText ( True ) self . Browser . setOpenExternalLinks ( True ) self . Browserr = QTextBrowser () self . Browserr . setAcceptRichText ( True ) self . Browserr . setOpenExternalLinks ( True ) self . Browser1 = QTextBrowser () self . Browser1 . setAcceptRichText ( True ) self . Browser1 . setOpenExternalLinks ( True ) self . Browser2 = QTextBrowser () self . Browser2 . setAcceptRichText ( True ) self . Browser2 . setOpenExternalLinks ( True ) self . Browser3 = QTextBrowser () self . Browser3 . setAcceptRichText ( True ) self . Browser3 . setOpenExternalLinks ( True ) self . label1 = QLabel ( '아이디:' ) self . label2 = QLabel ( '패스워드:' ) self . label3 = QLabel ( '주소:' ) self . label4 = QLabel ( '' ) self . label6 = QLabel ( '주소 입력 후 Enter' ) self . label7 = QLabel ( '' ) self . label8 = QLabel ( '' ) self . label9 = QLabel ( '검색어 :' ) self . clear_btn = QPushButton ( 'Clear' ) self . clear_btn . pressed .connect( self . clear_text ) self . clear_btn2 = QPushButton ( 'Clear' ) self . clear_btn2 . pressed .connect( self . clear_text2 ) self . clear_btn3 = QPushButton ( 'Clear' ) self . clear_btn3 . pressed .connect( self . clear_text3 ) self . start = QPushButton ( 'Start' , self ) self . start . clicked .connect( self . start_text ) grid = QGridLayout () self . setLayout ( grid ) grid . addWidget ( self . label1 , 0 , 0 ) grid . addWidget ( self . Qline , 0 , 1 ) grid . addWidget ( self . label2 , 1 , 0 ) grid . addWidget ( self . Qline1 , 1 , 1 ) grid . addWidget ( self . Browser , 3 , 1 ) grid . addWidget ( self . Browserr , 4 , 1 ) grid . addWidget ( self . clear_btn , 5 , 1 ) grid . addWidget ( self . label4 , 6 , 0 ) grid . addWidget ( self . label3 , 7 , 0 ) grid . addWidget ( self . Qline2 , 7 , 1 ) grid . addWidget ( self . label6 , 8 , 1 ) grid . addWidget ( self . Browser1 , 9 , 1 ) grid . addWidget ( self . clear_btn2 , 10 , 1 ) grid . addWidget ( self . label8 , 13 , 0 ) grid . addWidget ( self . label9 , 14 , 0 ) grid . addWidget ( self . Qline3 , 14 , 1 ) grid . addWidget ( self . Browser2 , 15 , 1 ) grid . addWidget ( self . clear_btn3 , 16 , 1 ) grid . addWidget ( self . label7 , 17 , 0 ) grid . addWidget ( self . start , 18 , 1 ) grid . addWidget ( self . Browser3 , 19 , 1 ) self . setWindowTitle ( '로그인 해봅시다!' ) self . setGeometry ( 300 , 100 , 400 , 500 ) self . show () def append_text ( self ): text = self . Qline . text () text1 = self . Qline1 . text () self . Browser . append ( text ) self . Browserr . append ( text1 ) self . Qline . clear () self . Qline1 . clear () def append_text1 ( self ): text2 = self . Qline2 . text () self . Browser1 . append ( text2 ) self . Qline2 . clear () def append_text2 ( self ): text3 = self . Qline3 . text () self . Browser2 . append ( text3 ) self . Qline3 . clear () def clear_text ( self ): self . Browser . clear () self . Browserr . clear () def clear_text2 ( self ): self . Browser1 . clear () def clear_text3 ( self ): self . Browser2 . clear () def start_text ( self ): self . Browser3 . setText ( "검색 시작!" ) self . worker = WorkerThread () self . worker . start () global a a = self . Browser . toPlainText () global b b = self . Browserr . toPlainText () global c c = self . Browser3 class WorkerThread ( QThread , QWidget ): def run ( self ): self . actions ppap = a . split ( ' \n ' ) ppap2 = b . split ( ' \n ' ) i = 0 while i < len ( ppap ): driver = webdriver . Chrome ( executable_path = r 'C: \\ newdongwoo \\ chromedriver.exe' ) driver . get ( "https://nid.naver.com/nidlogin.login?svctype=262144&url=https%3A %2F%2F nid.naver.com %2F mobile %2F user %2F help %2F naverProfile.nhn %3F lang%3Dko_KR" ) login_btn = driver . find_element_by_id ( 'log.login' ) tag_id = driver . find_element_by_name ( 'id' ) tag_pw = driver . find_element_by_name ( 'pw' ) tag_id .clear() tag_id .click() c . setText ( "이 코드에서 값을 못 보내는 듯 합니다.." ) pyperclip . copy ( ppap [ i ]) tag_id .send_keys( Keys . CONTROL , 'v' ) time . sleep ( 1 ) tag_pw .click() pyperclip . copy ( ppap2 [ i ]) tag_pw .send_keys( Keys . CONTROL , 'v' ) time . sleep ( 1 ) login_btn .click() time . sleep ( 2 ) i += 1 if __name__ == '__main__' : app = QApplication ( sys . argv ) ex = MyApp () sys . exit ( app . exec_ ())

  • python
  • 웹-크롤링
통치꽁조림 댓글 2 좋아요 0 조회수 215

DetailProductPage의 useEffect 관련 질문입니다.

미해결

따라하며 배우는 노드, 리액트 시리즈 - 쇼핑몰 사이트 만들기[전체 리뉴얼]

1.여기서 setProduct를 해준 다음에 바로 console.log("프로덕트",Product)를 찍으니 빈 오브젝트({ })가 나오더라구요.useEffect가 끝나야 const Product에 셋팅이 되어 그런건지...이유를 모르겠습니다.setProduct로 셋팅이 된 후, Product를 콘솔로 찍은건데 왜 안나올까요 2.useEffect 두번째인자에 Product를 넣으니 처음엔 빈 오브젝트 나오다가 두번째부터 제대로 콘솔에 나오는데 계속 무한반복으로 콘솔에 찍히는 이유는 무엇인가요?? 좋은강의 감사합니다.

  • redux
  • nodejs
  • react
  • 웹앱
  • mongodb
goro 댓글 0 좋아요 0 조회수 136

모던 CSS 스타일링 `flex`속성 적용범위에 관한 질문입니다

해결됨

Svelte.js [Core API] 완벽 가이드

제가 모던 CSS 속성들은 적용시점이 애매한지라 질문하게 되었습니다^^; 과거 `flex & grid` 등장이후, 수많은 호환성 문제로 업계에서 바로 쓰이진 않고, 지금에서야 많이 쓰이는걸로 알고 있습니다. 그래서 드는 궁금점이 전부터 있었는데요, 바로 `flex` 도배에 관한 의문점이예요.. `flex`속성 접하고 드는 생각은 "이걸로 몽땅 레이아웃 잡으면 되는거 아냐?" 라구요ㅎ 그러나, 강사님이 소개해주시는 레이아웃 기법에는 `flex` 사용을 적절히 하시는것을 보고 적당히 써야할 곳을 찾아야 되는것을 알았습니다 flex 적용범위를 판단하는 기준은 어떤것이 있을까요? 예를 들어 컨테이너 레벨 요소는 일반 CSS 정렬 적용 자식 요소가 많은경우 `flex` 적용 등등.. 마침 CSS 강의를 해주셔서, 그리고, 패캠 프론트엔드 강의에서 못여쭤본 부분에 대한 질문인데 답변해 주실수 있으신가요? 실무서 기준을 어떻게 잡으시는지가 궁금합니다 부담없으시도록 간단 요약 답변을 주셔도 좋을것 같습니다 읽어주셔서 감사합니다

  • svelte
  • Sortable
  • Rollup
Truestar 댓글 4 좋아요 1 조회수 332

노드 실행시 관련 없는 도메인 표시

미해결

[리뉴얼] Node.js 교과서 - 기본부터 프로젝트 실습까지

강의보면서 간단한 서버를 만들어 로컬에서 테스트중인데 시간이 좀 지나면 아래와같이 모르는 도메인들이 나타납니다. 중국사이트같은데 원래 나타나는건가요? 불안해서 여쭤봅니다.ㅠ

  • 서버실행
  • 노드
  • nodejs
  • mysql
  • mongodb
  • Sequelize
낄낄이드래곤 댓글 9 좋아요 0 조회수 674

로또 번호 생성기 소스코드

해결됨

모던 자바스크립트(javascript) 개발을 위한 ES6 강좌

function makeLottoNumber() { const lottoList = new Set(); while (lottoList.size < (CONFIG.bonus ? 7 : 6)) { const random = Math.floor(Math.random() * CONFIG.maxNumber + 1); lottoList.add(random); } console.log(CONFIG.title); const result = [...lottoList]; if (CONFIG.bonus) { const bonusNum = result.pop(); return { number: result, bonus: bonusNum }; } else { return { number: result }; } } const CONFIG = { title: "Happy Lotto Time!", maxNumber: 45, bonus: true, }; console.log(makeLottoNumber()); 참고용으로 올립니다.

  • 구조분해문법
  • set
  • es6
  • 로또번호생성기
  • javascript
드로우 댓글 0 좋아요 0 조회수 368

ManyToOne, OneToMany 널 오류

자바 ORM 표준 JPA 프로그래밍 - 기본편

삭제된 글입니다

  • ManyToOne
  • OneToMany
  • java
  • test
  • JPA
래셔널 댓글 1 좋아요 0 조회수 62

비트 연산의 용도 부분에서 질문이 있습니다.

미해결

[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part1: C# 기초 프로그래밍 입문

<< , >> 를 이용해서 비트 값(?)을 좌우로 옮길 수가 있고, 그렇게 하나의 id 안에 여러 개의 정보를 넣을 수 있다고 하셨는데요. int 자료형을 비트로 환산할 때 32개의 비트로 구성된다고 하면, 2개의 정보를 넣는다고 할 때, 각 정보는 16비트로 구성되니까 최대 65,535개 이상의 범위가 될 수 없는 거라고 이해를 했습니다. 만약 4개의 서로 다른 정보를 넣는다고 하면 각 정보는 최대 256개의 가짓수를 넘을 수 없다고 이해하는 것이 맞을까요? 그리고 그렇다고 한다면 추후 비트연산을 사용할 때, 개별적인 정보 안에서의 다양성을 위해 비트를 넉넉하게 분배해야 하는 것으로 이해하면 맞을까요?

  • C#
댄(Dan) 댓글 2 좋아요 2 조회수 297

안녕하세요

미해결

[리뉴얼] React로 NodeBird SNS 만들기

안녕하세요 저는 프론트앤드 개발자를 준비하고있는데요 ㅎㅎ 강의를 물론 다 들으면 좋긴 하겠지만.... redux-saga연동하기 부분까지만 들어도 괜찮을까요 ?

  • Next.js
  • express
  • nodejs
  • react
  • redux
leehyunju 댓글 1 좋아요 0 조회수 206

mask_phone_number 함수

미해결

공공데이터로 파이썬 데이터 분석 시작하기

phone = '+82-10-1234-5678' def mask_phone_number(phone): num = phone.split('-') num_len = len(num)//2 #전화번호의 가운데를 지정하기위해('/'을 2개한 이유는 정수형태로 나와서) num[num_len] = re.sub('\w','*',num[num_len]) num[-1] = re.sub('(\d{2})(\d{2})', r'**\2', num[-1]) return '-'.join(num) mask_phone_number(phone) 이렇게 만들었는데요 궁금한점이 num[num_len] = re.sub('\w','*',num[num_len]) num[-1] = re.sub('(\d{2})(\d{2})', r'**\2', num[-1]) 이 부분에서 전화번호 가운데의 부분 num[num_len] = re.sub('\w','*',num[num_len]) 은 정규식 규칙에서 \w로 하고 전화번호 뒷부분 num[-1] = re.sub('(\d{2})(\d{2})', r'**\2', num[-1]) 에는 정규식 규칙에서\d로 하셨는데.. 전화번호 가운데 부분도 숫자라서 \d로 해야 하는 거 아닌가요? (규칙에서 \w를 \d로 바꿔도 잘 적용됩니다.) \w는 (A-Z, a-z, 0-9 ) 문자, 숫자 다 가능해서 그렇게 쓰신건가요?

  • numpy
  • python
  • pandas
freedom07 댓글 1 좋아요 1 조회수 233

강의 46강 8:09 지점 따라하기 시 결과가 나오지 않아 질문 드려요

미해결

[리뉴얼] 파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)

안녕하세요 강사님, 교육 잘 듣고 있습니다 강의 자료 46강 과 같이 따라해보기를 하고 있는데 하기 처럼 하면 강사님 결과와 다른 결과가 나와 아래와 같이 하여 보니 "mydata"에 아무것도 들어와 있지 않은데 어떻게 하면 될까요? 참고로 저는 iOS환경에서 아나콘다에서 JupyterNotebook을 띠워 따라하기를 하고 있습니다 import requests from bs4 import BeautifulSoup res = requests.get('http://v.media.daum.net/v/20170615203441266') soup = BeautifulSoup(res.content,'html.parser') mydata = soup.find_all('span', 'text_info') mydata

  • 웹-크롤링
  • python
cumulonimbus69 댓글 1 좋아요 0 조회수 246

안녕하세요! 교수님 질문있습니다

미해결

운영체제 공룡책 강의

안녕하세요 퀄리티 좋은 강의 정말 감사합니다. 멀티쓰레딩 강의를 보면서 궁금한 점이 생겼는데요, SIMD에 대해서 입니다. 이것도 병렬 프로그래밍에 관한 개념으로 알고 있는데 쓰레드와 어떤 차이점이 있는 것인지, 내부적인 동작원리등이 궁금합니다..!

  • 운영체제
  • 동시성
Seoui 댓글 2 좋아요 1 조회수 326

setTimeout() VS tick() 처리로직 과 `범용성`에 관한 질문 입니다

해결됨

Svelte.js [Core API] 완벽 가이드

아래 Wondam Jung 님 질문에서 정리 해 주신글 잘 보았습니다. 댓글로 질문을 남기려다 관련성이 떨어진다 싶어 새로 질문을 작성했는데요, 저는 `tick()` 적용하시리라 생각했는데 setTimeout 은 의외적으로 느껴졌습니다. 컴포넌트 외부에서는 tick() 처리를 하지 않으신 이유를 알수 있을까요? (tick() 처리가 효율적이지 않아서일까요?? 아니면 다른 문제가 있는건지...) 그리고, setTimeout 처리 방식을 다른 라이브러리같은 Vue 나 React 의 경우에도 사용이 가능하겠지요? (내부적으로 처리되게 하는 방식이 있겠지만요..) 읽어주셔서 감사합니다.

  • tick()
  • tick
  • svelte
  • settimeout
  • Rollup
  • Sortable
Truestar 댓글 2 좋아요 1 조회수 404

추가 강의 문의.

미해결

코딩테스트 전 꼭 알아야 할 개념과 문제(with 자바)

안녕하세요~ 알고리즘 여러 스터디에 참여 하면서 이런 문제들도 필수로 나오는거 같아 문의드립니다. 1. 순열 2. 조합 이 세가지에 대해 혹시 강의 계획도 있으신지 문의드립니다. 감사합니다.

  • 순열
  • 조합
  • java
  • 소수구하기
  • 코테 준비 같이 해요!
Sung Rak 댓글 3 좋아요 1 조회수 424

안녕하세요 강사님 statefulset 질문드립니다.

미해결

데브옵스(DevOps)를 위한 쿠버네티스 마스터

1. statefulset로 만들어진 pvc나 pv같은게 더이상 필요없는경우에는 일일이 커맨드나 gcp에서 수동으로 삭제해줘야되나요? 2. replicas=2로 두개의 pv에 연결된 pod이 있다고 했을때의 pv 상태를 web-0 : pv0 web-1: pv1 이라고 했을때 replicas=1로 줄이면 web-0: pv0 : pv1 이 된다는것은 알겠습니다 그런데 여기서 pv0의 내용이 바뀐다음 다시 replicas=2로 늘리게 된다면 pv1의 내용이 pv0과 동일하게 바뀌게 되나요? 3. 2번 질문에서 마찬가지로 web-0: pv0 : pv1 인 상태에서 pv0의 내용이 모종의 이유로 손상돼서 pv1이 필요하게 될때에는 어떻게 대처하면 되려나요 항상 감사합니다!

  • kubernetes
  • docker
Brian Choi 댓글 2 좋아요 1 조회수 266

스프링 빈 저장소에 대한 정보.

미해결

스프링 핵심 원리 - 기본편

스프링 빈 저장소에 빈 객체 빈 타입 빈 이름 등등... 여러가지가 들어가는것 같은데 저번에 설명해주신 자료에는 빈 타입은 없었던것 같아서요... 혹 시 관련 공부를 더 하고싶은데 다른 자료를 어떻게 검색하면 좋을까요?

  • spring
  • oop
탈룰라 댓글 1 좋아요 0 조회수 148

이건 노드 설치도중에..

해결됨

리액트로 나만의 블로그 만들기(MERN Stack)

제가 이전에 노드를 공부하고 있엇거든요 그런데 문제가 있어서 혹시나 하고 여기서 남겨보는데 npm i express generator 이거 명령어를 떄려서 하는데 이제 중단됐는지 안되네요 ㅠㅠ deprecated mkdirp@0.5.1: Legacy versions of mkdirp are no longer supported. Please update to mkdirp 1.x. (Note that the API surface has changed to use Promises in 1.x.) 해결 방법 좀 알 수 있을까요?

  • mongodb
  • redux
  • express
  • react
  • nodejs
  • bootstrap
스터디하쟈 댓글 1 좋아요 0 조회수 289

익스프레스 제너레이터? 설치문제

해결됨

Node.js 교과서 - 기본부터 프로젝트 실습까지

지원이 끊겼나봐요? 자꾸 이런 에러만 뜹니다.. npm WARN deprecated mkdirp@0.5.1: Legacy versions of mkdirp are no longer supported. Please update to mkdirp 1.x. (Note that the API surface has changed to use Promises in 1.x.) 자꾸 설치가 안되서 express -h 이러면 헬퍼 떠야한데 안나오고.. 답답하네요

  • javascript
  • mysql
  • nodejs
  • mongodb
스터디하쟈 댓글 6 좋아요 0 조회수 2685

컴포즈시 이미지 생성 관련 질문입니다.

미해결

따라하며 배우는 도커와 CI환경 [2023.11 업데이트]

강의 내용대로 따라 하면서 보니 이미지가 총 3개가 생겼습니다. redis 는 redis-server를 지정하면서 생긴건 알겠는데 기존에 node 이미지외에 node-app 이미지가 따로 존재하더라구요 하지만 사용중인 이미지는 node-app 이고 node는 사용이 안되고 있더라구요 이미지 크기를 보니 node-app이 node 보다 조금 더 크던데 node 이미지는 docker-compose up을 하면서 작성되어 있던 dockerfile에 의해 일단 만들어지고 yml 파일에서 그 이미지를 가지고 node-app 이미지를 만든건가요? 사용하지 않는 이미지가 발생하지 않게 하려면 어떻게 해야 하나요?

  • 도커
  • 컴포즈
  • aws
  • 컨테이너
  • github
  • docker
  • travis-ci
  • cicd
  • 데이터 엔지니어링
TomLee 댓글 0 좋아요 0 조회수 349

안녕하세요. 논문 제목이 궁금합니다.

미해결

왕초보 블록체인 개념 완벽 이해하기(with 자바)

안녕하세요. 이번 수업 자료의 마지막에서, 노드와 블록의 설명 중 ' (노드에서는 broadcast로 표현)' 이라는 언급이 있는데, 혹시 언급하신 논문이 무엇인지 알 수 있을까요? 그리고 함께 읽으면 좋을 논문도 알려주시면 감사하겠습니다 :)

  • blockchain
  • java
곽효빈 댓글 1 좋아요 1 조회수 233

인기 태그

인프런 TOP Writers

주간 인기글