inflearn logo
강의

講義

知識共有

会社員のためのプログラミング入門と業務自動化の活用

ウェブスクレイピング selenium

에러가 자꾸 뜨는데 코드에 문제가 있나요 ㅠㅠ

345

7878rrr1515

投稿した質問数 4

0

from bs4 import BeautifulSoup
import requests
import pandas as pd
from selenium import webdriver
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.suppor import expected_conditions as EC
from selenium.webdriver.common.by import By

browser = webdriver.Chrome('chromdriver')
bills = list()

for i in range(1, 2):
response = requests.get('http://watch.peoplepower21.org/index.php?mid=Euian&show=1&page={}&title=&rec_num=15&lname=&sangim=&bill_result='.format(i))
html = response.text


soup = BeautifulSoup(html, 'lxml')
body = soup.body

div_ea_list = body.find(id='ea_list')
table = div_ea_list.table
tbody = table.tbody

lines = tbody.find_all('tr')

for line in lines:
td_list = line.find_all('td')
bills.append(
[td_list[0].text, td_list[1].text, td_list[2].text, td_list[3].text, td_list[4].text]
)
bill_url = 'http://watch.peoplepower21.org' + td_list[1].a.get('href')

print(bill_url)

browser.get(bill_url)
browser.implicitly_wait(5)
WebDriverWait(browser, 20).until(EC.presence_of_element_located(
(By.ID, 'collapseTwo')

))

html = browser.page_source
soup = BeautifulSoup(html, 'lxml')

body = soup.body
proposers = body.find(id='collapseTwoe').text.replace('','')

bills.append(
[td_list[0].text, td_list[1].text, td_list[2].text, td_list[3].text, td_list[4].text]
)



df = pd.DataFrame(bills, columns=['제안일', '의안명', '발의자명단','상임위','상태' ])
df.to_excel('bill.xlsx')

browser.quit()

python

回答 2

0

7878rrr1515

감사합니다.

0

SungYong Lee

안녕하세요. 혹시 이 문제 해결하셨나요? 오타가 중간중간 보이네요. 

6번째 줄에 

from selenium.webdriver.suppor import expected_conditions as EC

이 부분. suppor 이 아니라 support 입니다. 

그리고 9번째 줄에 

browser = webdriver.Chrome('chromdriver')

이 부분. chromdriver가 아니라 chromedriver 입니다. 

이렇게 고치고 나면, 17번째 줄에서 아래와 같은 에러메세지가 뜰 수 있습니다. 

Traceback (most recent call last):

  File "C:/github/python_tutorial_for_salarymen/hk.py", line 17, in <module>

    soup = BeautifulSoup(html, 'lxml')

  File "C:\github\python_tutorial_for_salarymen\venv\lib\site-packages\bs4\__init__.py", line 208, in __init__

    % ",".join(features))

bs4.FeatureNotFound: Couldn't find a tree builder with the features you requested: lxml. Do you need to install a parser library?

이 문제는 터미널에서

pip install lxml 

명령어를 입력해서 해결할 수 있습니다. lxml 모듈이 깔리지 않았다는 뜻이거든요 

17번째 줄을 통과하고 나니 46번째 줄에 오타가 있습니다. 

proposers = body.find(id='collapseTwoe').text.replace('','')

여기서 collapseTwoe는 오타인 것 같죠? collapseTwo로 수정합니다. 

혹시 openpyxl은 설치하셨나요? 그렇지 않다면 파일 저장할 때 문제가 생길 수 있습니다. 이 경우 

pip install openpyxl

로 설치해주세요. 

에러 메세지를 확인하면서 어디서 문제가 생겼는지 확인하시면, 더 빠르게 파이썬을 습득하실 수 있을겁니다. 강의 막바지까지 들으셨는데, 끝까지 화이팅하세요~!

작업형 1 유형 부분

0

7

1

수강평 이벤트

0

15

2

작업형 1 (삭제예정, 구 버전)

0

28

2

강의노트는 어디있나요?

0

13

0

노션 학습 자료 권한 요청

0

13

1

수강기간 연장 문의드립니다.

0

19

1

2유형 레이블 인코딩 VS 원핫 인코딩

0

19

3

part2강의 문의사항입니다.

0

17

2

맥os 유저는 어떻게 하나요?.

0

412

1

엑셀파일과 csv파일 용도 차이는?

1

2395

2

만들고 싶은 프로그램이 있는데요...

0

235

1

강사님께서 영상 내에서 쓰신 단축키에 대해서 질문드립니다.

0

293

1

atom 을 쓰는데 오류가 났습니다ㅠㅠ

0

229

0

셀레늄 실행하면 해당 에러가 뜨고 정상적으로 크롤링 되지 않네요

0

321

1

df=df.sort_values(by=[&#039;시간당 생산&#039;,&#039;근무시간&#039;],ascending=[False,False])

0

373

1

python-docx 오류 도와주세요

0

927

2

python-docx 오류 나요.

0

337

0

self나 __init__등 정확히 제대로 제 것으로 만들기가 힘들어요.(이해안가요)

4

23916

3

csv파일 엑셀에서 변환이 제대로 안됩니다.

0

373

1

employee_result 결과값이 나오긴 했는데 근무시간이 좀 이상해서요

0

264

2

마지막에 노동법 준수하는 if식을 넣은 뒤 에러가 나는데요

0

298

1

20분경에 나오는 파이참 run 을 할때 에러가 나서 잘 안되는데 왜그럴까요?

0

433

2

seperated -> separated ^^

0

612

1

close() ?

0

290

1