커뮤니티
포인트
쿠폰
내 강의실
국비 신청 내역
증명서
계정
로그아웃
학습 질문
개발 일지
나의 활동
스스로 해결
get_news('삼성전자') 오류
undefined주차
북마크
강*지
댓글
1
추천
0
조회수
17
조회수
17
스스로 해결

* 겪고 있는 문제 상황을 최대한 자세하게 작성해주세요.

* 문제 해결을 위해 어떤 시도를 해보았는지 구체적으로 함께 알려주세요.


코드를 입력했는데 아래와 같이 오류가 뜹니다



스파르타 즉문즉답





import requests
from bs4 import BeautifulSoup
from openpyxl import Workbook


def get_news(keyword):


  wb= Workbook()
  sheet = wb.active


  headers = {'User-Agent' : 'Mozilla/5.0 (Windows NT 10.0; Win64; x64)AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.86 Safari/537.36'}
  data = requests.get(f'https://search.naver.com/search.naver?where=news&ie=utf8&sm=nws_hty&query={keyword}',headers=headers)


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


  lis = soup.select('#main_pack > section > div > div.group_news > ul > li')


  for li in lis:
    a = li.select_one('a.news_tit')
    row = {a.text, a['href']}
    sheet.append(row)


  wb.save(f"{keyword}.xlsx")
  wb.close()


get_news('삼성전자')


---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-30-82724b372f00> in <module>
----> 1 get_news('삼성전자')


2 frames
/usr/local/lib/python3.8/dist-packages/openpyxl/worksheet/worksheet.py in _invalid_row(self, iterable)
    810 
    811     def _invalid_row(self, iterable):
--> 812         raise TypeError('Value must be a list, tuple, range or generator, or a dict. Supplied value is {0}'.format(
    813             type(iterable))
    814                         )

TypeError: Value must be a list, tuple, range or generator, or a dict. Supplied value is <class 'set'>
취소
 공유
취소
댓글 0
댓글 알림
나의얼굴