인프런 커뮤니티 질문&답변

이동희님의 프로필 이미지

작성한 질문수

실시간 트렌드 홈페이지 개발(파이썬 크롤링 + Flask)

크롤링한 데이터 html에 보여주기

print(soup.select("") 에서 "GET / HTTP/1.1" 500 - 에러 나네요.

작성

·

298

0

아래까지는 잘 진행되었습니다. 

def hello():

# 엔터치기
req = requests.get("https://www.daum.net/")

# 이런 식으로 HTML에 있는 코드를 다 가져온다
soup = BeautifulSoup(req.text, 'html.parser')

print(soup)

지금은 다음 실시간 이슈 검색어가 없어서 동일하게 실습을 하지 못하고 우측 하단에 있는 인기상품BEST 100에서 검색해서 Copy selector 하여 아래 같이 붙여넣고 실행하면 에러가 납니다.

def hello():

# 엔터치기
req = requests.get("https://www.daum.net/")

# 이런 식으로 HTML에 있는 코드를 다 가져온다
soup = BeautifulSoup(req.text, 'html.parser')

print(soup.select("#listWrap > li:nth-child(1)"))

에러는 다음과 같습니다.

[2021-05-21 20:52:32,833] ERROR in app: Exception on / [GET]

Traceback (most recent call last):

  File "C:\Anaconda3\lib\site-packages\flask\app.py", line 2447, in wsgi_app

    response = self.full_dispatch_request()

  File "C:\Anaconda3\lib\site-packages\flask\app.py", line 1953, in full_dispatch_request

    return self.finalize_request(rv)

  File "C:\Anaconda3\lib\site-packages\flask\app.py", line 1968, in finalize_request

    response = self.make_response(rv)

  File "C:\Anaconda3\lib\site-packages\flask\app.py", line 2097, in make_response

    raise TypeError(

TypeError: The view function did not return a valid response. The function either returned None or ended without a return statement.

127.0.0.1 - - [21/May/2021 20:52:32] "GET / HTTP/1.1" 500 -

답변 3

0

개복치개발자님의 프로필 이미지
개복치개발자
지식공유자

동아일보 사이트로 실습을 진행해보시겠어요?

아래는 소스코드입니다

import requests
from bs4 import BeautifulSoup

response = requests.get('https://www.donga.com/news/List/Politics')

html = response.text

soup = BeautifulSoup(html, 'html.parser')


for i in soup.select("#content > div.articleList") :
print(i.select_one("a > span.tit").text)

0

이동희님의 프로필 이미지
이동희
질문자

에러화면 입니다.

아래는 소스화면입니다. Daum 메인화면에 검색순위가 없어서 Daum 증권 (https://finance.daum.net/) 홈에 있는 검색순위로 실습해 본 겁니다.

0

개복치개발자님의 프로필 이미지
개복치개발자
지식공유자

안녕하세요.

질문 답변드리려면 아래의 정보가 필요합니다 :)

1. 전체 코드

2. 강의 어느부분을 보시고 있으신지

3. 에러 스크린샷

이렇게 공유주세요~