172만명의 커뮤니티!! 함께 토론해봐요.
미해결
따라하며 배우는 노드, 리액트 시리즈 - 기본 강의
계속 붙잡고 있어도 안되서 헬프를 칩니다.. 뭐가 문제인거죠..? auth.js 파일에서 findbytoken을 만드는데 계속 안되기만 합니다. TypeError: User.findByTokenis not a function at auth (C:\Users\AndrewLee\Desktop\node_basic\boilerPlate\middleware\auth.js:8:10) at Layer.handle [as handle_request] (C:\Users\AndrewLee\Desktop\node_basic\boilerPlate\node_modules\express\lib\router\layer.js:95:5) at next (C:\Users\AndrewLee\Desktop\node_basic\boilerPlate\node_modules\express\lib\router\route.js:137:13) at Route.dispatch (C:\Users\AndrewLee\Desktop\node_basic\boilerPlate\node_modules\express\lib\router\route.js:112:3) at Layer.handle [as handle_request] (C:\Users\AndrewLee\Desktop\node_basic\boilerPlate\node_modules\express\lib\router\layer.js:95:5) at C:\Users\AndrewLee\Desktop\node_basic\boilerPlate\node_modules\express\lib\router\index.js:281:22 at Function.process_params (C:\Users\AndrewLee\Desktop\node_basic\boilerPlate\node_modules\express\lib\router\index.js:335:12) at next (C:\Users\AndrewLee\Desktop\node_basic\boilerPlate\node_modules\express\lib\router\index.js:275:10) at cookieParser (C:\Users\AndrewLee\Desktop\node_basic\boilerPlate\node_modules\cookie-parser\index.js:71:5) at Layer.handle [as handle_request] (C:\Users\AndrewLee\Desktop\node_basic\boilerPlate\node_modules\express\lib\router\layer.js:95:5) at trim_prefix (C:\Users\AndrewLee\Desktop\node_basic\boilerPlate\node_modules\express\lib\router\index.js:317:13) at C:\Users\AndrewLee\Desktop\node_basic\boilerPlate\node_modules\express\lib\router\index.js:284:7 at Function.process_params (C:\Users\AndrewLee\Desktop\node_basic\boilerPlate\node_modules\express\lib\router\index.js:335:12) at next (C:\Users\AndrewLee\Desktop\node_basic\boilerPlate\node_modules\express\lib\router\index.js:275:10) at C:\Users\AndrewLee\Desktop\node_basic\boilerPlate\node_modules\body-parser\lib\read.js:130:5 at invokeCallback (C:\Users\AndrewLee\Desktop\node_basic\boilerPlate\node_modules\raw-body\index.js:224:16) ㄱ계속 이 문구만 뜨고요 함수가 아니라는데 저는 함수를 user.js에 만들었고.. 아 이게 무슨 문제일까요.. auth.js const { User } = require ( '../models/user' ); let auth = ( req , res , next ) => { // 이곳에서 인증처리를 하는 곳 // 클라이언트 쿠리에서 토큰을 가져온다 ==> 쿠키 파서를 이용한다. let token = req . cookies . x_auth ; console . log ( 'auth/token :' + token ); // 토큰을 복호화한 후 유저를 찾는다. User . findByToken ( token , ( err , user ) => { if ( err ) throw err ; if (! user ) { return res . json ({ isAuth : false , error : true }) // 유저가 없으니까 } else { // 유저가 있으면 req . token = token ; // 이렇게 설정해주는 이유는 콜러에서 req.token , req.user와 같이 사용할 수 있게 하기 위해서이다. req . user = user ; next (); } }); // 유저가 있으면 인증 오케이 // 유저가 없으면 인증 노노 } module . exports = { auth }; user.js const mongoose = require ( '../node_modules/mongoose' ); const bcrypt = require ( 'bcrypt' ); const saltRounds = 10 ; const myPlaintextPassword = 's0/ \/\P 4$$w0rD' ; const someOtherPlaintextPassword = 'not_bacon' ; var jwt = require ( 'jsonwebtoken' ); const userSchema = mongoose . Schema ({ name : { type : String , maxlength : 50 }, email : { type : String , trim : true , //스페이스를 없앤다 unique : 1 // 유일한 특성 }, password : { type : String , minlength : 5 }, lastname : { type : String , maxlength : 50 }, role : { // 롤을 주는 이유는 유저의 관리권한을 부여하기 위해서 type : Number , defalut : 0 }, image : String , token : { // 토큰을 이용해서 유효성등을 나중에 관리함 type : String }, tokenExp : { // 토큰의 유효기간 type : Number } }) userSchema . pre ( 'save' , function ( next ) { var user = this ; console . log ( '1' ); if ( user . isModified ( 'password' )) { console . log ( '2' ); bcrypt . genSalt ( saltRounds , function ( err , salt ) { console . log ( '3' ); if ( err ) return next ( err ); console . log ( '4' ); bcrypt . hash ( user . password , salt , function ( err , hash ) { console . log ( '5' ); if ( err ) return next ( err ); console . log ( '6' ); console . log ( hash ); user . password = hash ; next (); }); }); } else { next (); } }) userSchema . methods . comparePassword = function ( planPassword , cb ){ bcrypt . compare ( planPassword , this . password , function ( err , isMatch ){ if ( err ) return cb ( err ); cb ( null , isMatch ); } ); } userSchema . methods . generateToken = function ( cb ){ var user = this ; // json웹토큰을 이용해서 토큰을 생성하기 var token = jwt . sign ( user . _id . toHexString (), 'hihello' ); // 이렇게 토큰을 만들면 ,, // user._id + hihello = token이 되고, 나중에는 token과 hihello로 user._id를 만들 수 있다. user . token = token ; user . save ( function ( err , user ){ if ( err ) return cb ( err ); // 에러가 났으면 에러를 전달 cb ( null , user ); // 문제가 없으면 에러는 없고 유저를 전달 자 그럼 index.js로 넘어가서~ }); } userSchema . methods . B = function ( token , cb ){} userSchema . methods . findByToken = function ( token , cb ){ var user = this ; // 토큰을 디코드 한다. user_id + '' = token console . log ( "1 : " + token ); jwt . verify ( token , 'hihello' , function ( err , decoded ){ // 유저 아이디를 이용해서 유저를 찾은 다음에 // 클라이언트에서 가져온 token과 db에 보관된 토큰이 일치하는지 확인 user . findOne ({ "_id" : decoded , "token" : token }, function ( err , user ){ if ( err ){ return cb ( err ); } else { cb ( null , user ); } }) }) } const User = mongoose . model ( 'User' , userSchema ); console . log ( User . comparePassword ); module . exports = { User }; 좋은 강의 항상 감사드립니다.
andrewlee
2020-04-06T02:04:27.054Z
댓글 7
좋아요 2
조회수 889
해결됨
[개정판] 파이썬 머신러닝 완벽 가이드
안녕하세요? 저는 이제 막 머신러닝에 관심을 갖고 공부를 시작했습니다. 한 가지 궁금한 점은 저의 경우 100만개 정도 데이터로 머신러닝을 수행하는 경우도 있을 것으로 예상하는 데 머신러닝 속도를 높이는 방법이 궁금합니다. 배워도 속도 때문에 활용도가 낮아질까 염려되어 미리 질문 드립니다. 좋은 강의 감사합니다.
Neo
2020-04-06T01:59:43.799Z
댓글 2
좋아요 0
조회수 4542
미해결
누구든지 하는 리액트: 초심자를 위한 react 핵심 강좌
shouldComponentUpdate 기능 구현하기전부터 콘솔 로그확인시 두번씩 반복되는 것을 확인할수있는데, 적용후에도 동일하게 나타납니다. 어떤 문제인지 잘 파악이 되지않아 해당 화면 첨부드립니다. 확인부탁드리겠습니다. 감사합니다.
김미리
2020-04-03T23:43:45.911Z
댓글 6
좋아요 2
조회수 1221
미해결
공공데이터로 파이썬 데이터 분석 시작하기
Nbexteionsions 는 어떻게 jupyter 에 최초로 설치하나요?
Seil Oh
2020-03-31T07:29:09.948Z
댓글 6
좋아요 5
조회수 489
미해결
[개정판] 파이썬 머신러닝 완벽 가이드
선생님 안녕하세요! 강의 잘 듣고 있습니. 선생님께서 roc곡선 같은경우는 회귀보다는 0이냐 1이냐와 같이 분류를 하는 예측모형에서 모형의 타당도를 확인할때 많이 이용된다라고 하셨던 것 같습니다. 그렇다면 이전에 붓꽃을 분류하는 데이터와 같이 결과값이 3종류로 나눠지는 경우는 다른 값을 사용해야하나요? 1,0,2 와 같이 결과값을 구분하였을 때는 강의에서 나온 것 처럼 정밀도 재현율, roc 곡선 같은 것들을 그대로 사용해도 되는 건가요? .
tmdqkr0930
2020-03-29T05:52:43.549Z
댓글 1
좋아요 0
조회수 239
미해결
인스타그램 클론 - full stack 웹 개발
1. 인스타그램 클론 작동시키기 1) backend 마지막 강의까지 완료된 코드 frontend: backend에서 static: 프론트앤드 파트 예제파일 업로드 다운로드 받았습니다. backend: 마지막까지 완성된 수정 코드 어디서 받을 수 있는지 알고 싶습니다. 2) backend 마지막 강의까지 완료된 코드로 배포해서 구현하기 제로베이스 기준에서 어떤어떤 강의를 듣고 환경을 설정해야 마지막 배포까지 할 수 있는지 알려주시면 직접 배포해서 환경에서 돌아가는 것 까지 스스로 해보고 싶습니다. 2. 제주도 카페 클론 작동시키기 기초 :: Django 에서 기초 전체 소스코드 다운 받았습니다. 마찬가지로 어떤어떤 강의를 보고 최소한의 세팅을 해야 배포까지 해서 작동하는지 알고 싶습니다. 30분 요약시리즈부터 맨앞부터 하는데 frontend가 끝나니까 벌써 조금 지쳐서 힘들어서 보고 싶어지네요.. 감사합니다~~
2020-03-26T17:41:16.363Z
댓글 1
좋아요 1
조회수 169
해결됨
파이썬 무료 강의 (기본편) - 6시간 뒤면 나도 개발자
저는 탱크 공격력이 *= 2 연산이 안되고 35.0으로 출력이 됩니다. 왜 저는 연산이 안되고 실수로 출력이 될까요
chch4934
2020-03-19T06:49:03.664Z
댓글 1
좋아요 0
조회수 204
미해결
남박사의 파이썬으로 실전 웹사이트 만들기
visual studio code 터미널에서 pip install pymongo 명령어 실행 시 캡쳐화면과 같이 오류가 나오면서 진행이 안됩니다. 해결방법이 있을까요?
공부하자
2020-03-15T12:47:58.620Z
댓글 6
좋아요 1
조회수 4799
해결됨
따라하며 배우는 노드, 리액트 시리즈 - 유튜브 사이트 만들기
기초 강의 12번 부분에서 이러한 에러가 나는데 이유를 못찾겠습니다. ㅠㅠ 윗 부분은 제 소스코드입니다. 비밀번호를 틀리게 보내면 loginSuccess: false로 제대로 오는데 비밀번호를 올바르게하면 맨 윗 사진과같이 답변이 오네요 ㅠㅠ
호진
2020-03-05T11:22:05.748Z
댓글 3
좋아요 0
조회수 499
미해결
프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)
sum = 0 for v in range(1,101): sum += v # sum1 = sum1 + v print(sum) print() print('1 ~ 1000 Sum : ', sum(range(1, 1001))) 위경우에 마지막 print 문에서 에러가 발생합니다. sum 변수가 먼저 0 으로 선언됐기 때문에 마지막줄의 print 문속에 sum 함수에서 에러가 나던데요? 먼저 sum 이 변수 선언되면 되었기때문에 뒤에 sum(range(1,1001) 처럼 sum 함수를 사용할 수 없는 건가요?
Ki Hun Jeong
2020-02-27T14:22:56.966Z
댓글 2
좋아요 0
조회수 299
미해결
프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)
마지막 강좌를 실습하는 과정에서 import winsound 구문을 입력하고 실행하면 아래와 같은 메시지가 나옵니다. ModuleNotFoundError: No module named 'winsound' 맥에서는 어떻게 처리해야 되는지 궁금하며, 만약 향후에 이와 같은 사운드를 OS와 상관없이 재생하도록 하려면 어떤 모듈을 활용해야하는지도 궁금합니다.
Byungwook Son
2020-02-27T10:13:17.089Z
댓글 1
좋아요 0
조회수 1664
미해결
파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
문제를 다른 방법으로 풀면 풀리기는 하는데, 이 방법이 어떻게 잘못됐는지 잘 모르겠습니다. import sys sys.stdin = open ( "input.txt" , "rt" ) #sys.stdin = open("input.txt", "rt") arr_ = [ list ( map ( int , input ().split())) for _ in range ( 9 )] brr = [] flag = "YES" dx = [- 1 , 0 , 1 , 0 ] dy = [ 0 , 1 , 0 , - 1 ] ################ 행 , 열 검사하는 내용 ################## for i in range ( 9 ): brr.clear() for j in range ( 9 ): brr.append(arr_[i][j]) if len ( set (brr)) != 9 : flag = "NO" break ################################################# ################## 3x3 검사하는 내용 ##################### if flag == "NO" : print (flag) else : for i in range ( 0 , 7 , 3 ): brr.clear() for j in range ( 0 , 7 , 3 ): ########### 문제의 코드 ############ brr.append(arr_[i][j]) brr.append(arr_[i][j + k*dy[ 1 ]] for k in range ( 1 , 3 )) # 우측 brr.append(arr_[i + dx[ 2 ]][j]) # 다음줄 시작점 brr.append(arr_[i + dx[ 2 ]][j + k*dy[ 1 ]] for k in range ( 1 , 3 )) # 우측 brr.append(arr_[i + 2 *dx[ 2 ]][j]) # 다음줄 시작점 brr.append(arr_[i + 2 *dx[ 2 ]][j + k*dy[ 1 ]] for k in range ( 1 , 3 )) # 우측 ########### 문제의 코드 ############ if len ( set (brr)) != 9 : flag = "NO" print (flag) break if flag == "YES" : print (flag) 제가 생각했던건 arr_ 을 스도쿠 맵이라고 하고 각 행과 열, 3x3 리스트의 숫자들을 각각 brr이라는 리스트에 추가해서 마지막에 brr을 set으로 중복 없앤 뒤, 길이가 9가 아니라면 no라고 하였습니다. 그런데 ##문제의 코드## 에서 옳지 않은 값이 들어가는 것 같습니다. (이 부분은 3x3 리스트의 값을 체크하는 식입니다) 저는 처음에 3x3 안의 값들을 brr에 추가하기 위해서 brr.append를 하고 안에다 arr[i][j]의 원소 값들을 넣으려고 했습니다. 그런데 디버깅을 해보니까 원소의 값들에 접근할 때, dx와 k * dy + for 문에서 이상한 값이 들어가는 것 같습니다. 왜 이상한 값이 들어가는지 알 수 있을까요?
2020-02-26T02:27:28.072Z
댓글 1
좋아요 0
조회수 278
미해결
남박사의 파이썬 기초부터 실전 100% 활용
"ResizeObserver loop limit exceeded"라는 에러떄문에 어제부터 골머리를 앓고있습니다 ㅠ 인스타그램에 로그인한뒤 좋아요와 댓글을다는 프로그램인데요, 로그인까지는 무리없이 되는데 상대방의 인스타그램 피드에 들어가고 좋아요를 누르는 와중에 터미널창에 "ResizeObserver loop limit exceeded"가 뜨며 실행창이 응답없음이 뜹니다 구글링해보니 크롬이 가지고있는 문제라고 하는데 해결법을 알수가 없습니다 ㅠㅠ 본인의 인스타 아이디 비번을 입력해 로그인한뒤 새로운 창이 열리고 상대의 아이디를 입력하여 '좋아요'를 클릭하면 상대의 페이지로 들어간뒤 첫 게시글을 클릭하여 좋아요와 댓글을다는 순서입니다. 코드입니다. from selenium import webdriver from PyQt5 import QtWidgets from PyQt5 import QtCore from PyQt5.QtWidgets import QToolButton, QSizePolicy, QLabel, QLineEdit,QPushButton import random import keyboard import re options=webdriver.ChromeOptions() options.add_argument( 'headless' ) #창을 안띄우는 headless모드 options.add_argument( 'window-size=1920x1080' ) options.add_argument( "disable-gpu" ) #gpu가속 끔 #user-agent값을 변경하여 headless모드 감지를 방지 options.add_argument( "user-agent=Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36" ) options.add_argument( "lang=ko_KR" ) #headless모드에선 언어설정이 안되있으므로 한국어로 설정(감지 방지) driver = webdriver.Chrome( 'C: \\ Users \\ User \\ Downloads \\ chromedriver_win32 \\ chromedriver.exe' , chrome_options =options) class start ( QtWidgets . QWidget ): def __init__ ( self ): super (). __init__ () self .layout=QtWidgets.QHBoxLayout( self ) self .id_layout = QtWidgets.QVBoxLayout( self ) self .pwd_layout = QtWidgets.QVBoxLayout( self ) #QV=가로 QH=세로 self .id=QLabel( "ID" ) self ._id=QLineEdit() self .pwd=QLabel( "password" ) self ._pwd=QLineEdit() self .id_layout.addWidget( self .id) self .id_layout.addWidget( self ._id) self .pwd_layout.addWidget( self .pwd) self .pwd_layout.addWidget( self ._pwd) self .layout.addLayout( self .id_layout) self .layout.addLayout( self .pwd_layout) self .setLayout( self .layout) self ._pwd.setEchoMode(QLineEdit.Password) self ._pwd.returnPressed.connect( self .login) self .show() def login ( self ): driver.get( "https://www.instagram.com/accounts/login/" ) driver.implicitly_wait( 10 ) driver.find_element_by_name( 'username' ).send_keys( self ._id.text()) driver.find_element_by_name( 'password' ).send_keys( self ._pwd.text()) driver.implicitly_wait( 10 ) driver.find_elements_by_tag_name( 'button' )[ 1 ].click() driver.implicitly_wait( 100 ) self .newWindow = Main() self .newWindow.show() self .close() class Main ( QtWidgets . QWidget ): def __init__ ( self ): super (). __init__ () self .layout_m = QtWidgets.QHBoxLayout( self ) #전체틀 self .start_layout = QtWidgets.QVBoxLayout() #버튼을 담을 틀 self .setFixedSize( 300 , 200 ) self .target=QLabel( "상대의 아이디를 입력하세요" ) self ._target=QLineEdit() self ._target.returnPressed.connect( self .targetID) self .like = self .createButton( "좋아요" , self .clicklike) self .like.resize( self .like.sizeHint()) self .start_layout.addWidget( self .target) self .start_layout.addWidget( self ._target) self .layout_m.addLayout( self .start_layout) #전체틀에 버튼을 담은 틀을 담음 self .layout_m.addWidget( self .like) self .setLayout( self .layout_m) self .show() def createButton ( self , text , function ): button = Button(text) button.clicked.connect(function) return button def targetID ( self ): self .target_name= self ._target.text() driver.get( 'https://www.instagram.com/ {} ' .format( self .target_name)) def clicklike ( self ): #첫번째 게시글 클릭 driver.find_elements_by_css_selector( '.v1Nh3.kIKUG._bz0w' )[ 0 ].find_element_by_tag_name( 'a' ).click() driver.implicitly_wait( 10 ) #좋아요누르기 driver.get(driver.current_url) temp1=driver.find_elements_by_class_name( 'eo2As ' ) temp1[ 0 ].find_element_by_class_name( 'wpO6b ' ).click() #사진의 정보가져와서 필요한데이터 추출 img_information=driver.find_elements_by_tag_name( 'img' )[ 1 ].get_attribute( 'alt' ) img_information=img_information.split( ': ' ) img_information=img_information[ 1 ].split( ' and ' ) food = [ "맛있겠네" , "맛있어 보이는구나!" , "다음에 나도 데려가~~" , "돼지야!" ] people=[ "오 아주 잘나왔군!" , "정말 멋쟁이군" , "우도환 닮았다" , "손나은 닮았다" ] for i in img_information: if re.search( 'people' ,i): case= "인물" break if re.search( 'food' ,i): case= "음식" break else : case= "기타" if case== "인물" : rand_number=random.randint( 0 , 3 ) comment=people[rand_number] elif case== "음식" : rand_number=random.randint( 0 , 3 ) comment=food[rand_number] else : comment= "^^7" #댓글입력 temp1[ 0 ].find_elements_by_class_name( 'wpO6b ' )[ 1 ].click() driver.find_element_by_tag_name( 'textarea' ).send_keys(comment) driver.implicitly_wait( 10 ) driver.find_element_by_class_name( 'X7cDz' ).find_element_by_tag_name( 'button' ).click() #계산기만들기의 코드 가져옴 class Button ( QToolButton ): def __init__ ( self , text ): super (). __init__ () buttonStyle = ''' QToolButton:hover {border:1px solid #0078d7; background-color:#e5f1fb;} QToolButton:pressed {background-color:#a7c8e3} QToolButton {font-size:11pt; font-family:나눔고딕; border:1px solid #d6d7d8; background-color:#f0f1f1} ''' self .setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Preferred) self .setText(text) self .setStyleSheet(buttonStyle) def sizeHint ( self ): size = super (Button, self ).sizeHint() size.setHeight(size.height() + 30 ) size.setWidth( max (size.width(), size.height())) return size if __name__ == '__main__' : app = QtWidgets.QApplication([]) win=start() app.exec_()
윤태영
2020-02-20T07:23:29.708Z
댓글 2
좋아요 1
조회수 2185
미해결
[리뉴얼] 파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
안녕하세요. '페이지 소스 보기'에서 아래 이미지와 같이 검색창에서 원하는 태그/요소를 찾으려면 어떻게 해야 하나요?
말랑말랑한 토끼
2020-02-20T04:10:29.388Z
댓글 1
좋아요 0
조회수 267
미해결
파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
첫 실습 문제 2번의 코드를 보면 (k번째 작은 수 찾기) import sys sys.stdin= open ( "input.txt" , "rt" ) x = int ( input ()) for i in range (x): n , s , e , k = map ( int , input ().split()) ins = list ( map ( int , input ().split())) ins = ins[s- 1 :e] ins.sort() print ( "#%d %d" %(i+ 1 , ins[k- 1 ])) 이와 같은데, 마지막 print문을 보면 for문이 끝날때마다 출력이 한번씩 되어야하는거 아닌가요? 이게 파일로 입력을 받아서 프린트가 다 끝나고 한번에 나오는건지, 혹시 그렇다면 만약 파일로 입력을 받지 않고 직접 콘솔에 타이핑해서 입력하면 for문에서 입력할때마다 출력문이 바로 나오는건지 궁금합니다. (강의를 보면 위와 같은 코드로 실행시키고, input 텍스트 파일에 값을 넣었을때, 정답이 #1 #2가 한번에 출력이 됩니다.)
2020-02-18T14:55:18.323Z
댓글 1
좋아요 0
조회수 166
미해결
[리뉴얼] 파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
안녕하세요! gspread 라이브러리 설치를 완료했는데도 불구하고 No module named 'gspread' 이라는 에러가 나서 진행을 못하고 있습니다 어떻게 해야할까요 ㅜ_ㅜ 설치 이후에 주피터노트북 껐다키고 안되서 재부팅까지 해봤지만 에러가 납니다!
2020-02-18T05:05:13.232Z
댓글 1
좋아요 1
조회수 922
미해결
업무 자동화를 위한 파이썬 pyautogui, beautifulsoup 크롤링 기초
VSCode에 대해 간단한 질문드립니다. 파이썬 코딩중에 엔터키가 먹지를 않습니다. ctrl 키와 엔터키를 쓰면 줄바꿈이 되기는 하는데, 불편합니다. 혹시 방법을 아시는지요.
khykhan
2020-02-08T15:11:30.741Z
댓글 4
좋아요 0
조회수 4001
미해결
[리뉴얼] 파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
안녕하세요. 끝까지 수강하기위해 노력중인 수강생이에요.. 마지막갈수록 어려워지는건 기분탓일까요.. Open API를 사용해서 랭킹, 제목, 링크까지 뽑아내는건 성공했습니다. 그런데 동영상 13분 30초에서도 보면 title로 뽑아낸 자료들에 전부 <b> </b> 태그가 붙는데 이 태그를 없애는 방법이 따로 있나요? 전에 썼던것 처럼 get_text 이런걸 써주면 해결되는 부분인가요? 제가 나름대로 get_text 를 써서 리스트 안에 넣어봤는데 안되더라구요. 어찌해야할까요?
2020-02-02T09:50:07.973Z
댓글 5
좋아요 0
조회수 837
미해결
[리뉴얼] 파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
이런 이러한 코드가 나오면서 오류가뜨고 API 이용이 안되는데 뭘 잘못한 걸까요????
2020-02-02T05:30:25.086Z
댓글 1
좋아요 0
조회수 373
미해결
프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)
요즈음 강의는 자막처리가 많이 되어 있는데 이곳에서도 강의내역이 자막으로도 볼 수 있을까요? 청각장애인을 위한...
전우연
2020-02-02T01:37:26.989Z
댓글 3
좋아요 2
조회수 701