저는 Python에 처음으로 익숙하며 이것이 제 첫 번째 실제 프로젝트입니다. 나는 웹 크롤러를 만들려고이 오류 여기UnboundLocalError : 할당 전에 로컬 변수 'soup'가 참조되었습니다.
import requests
from bs4 import BeautifulSoup
def main_spider(max_pages):
page = 1
while page < max_pages:
url = "https://en.wikipedia.org/wiki/Star_Wars" + str(page)
source_code = requests.get(url)
plain_text = source_code.text
soup = BeautifulSoup(plain_text)
for link in soup.findAll("a"):
href = link.get("href")
print(href)
page += 1
main_spider(1)
무엇입니까하면 오류
for link in soup.findAll("a"):
UnboundLocalError: local variable 'soup' referenced before assignment
귀하의 경우에는
게시 된 코드의 들여 쓰기를 수정할 수 있습니까? 'for' 루프가'while' 루프에없는 것처럼 보입니다. 'while'이 결코 참이 아닌 경우,'soup'는 절대로 할당되지 않고 오류가 발생합니다. 그러나 진짜 문제는 당신이 수프를 잠시 동안 가공하기를 원한다는 것입니다. – tdelaney
'while page <+ max_pages :''+ ' – tdelaney
코드가 위의 들여 쓰기가 필요 없습니다. 나는 수프를 잠시 동안 어떻게 처리하나요? 그것이 바보 같은 질문이라면 미안합니다. –