0
..어디서 예외를 사용해야합니까? URLLIB Python3 나는 웹 사이트를 크롤링 내가 필요로하는 항목을 찾기 위해이 스크립트를
from socket import timeout
from urllib.request import Request, urlopen, URLError
import bs4,urllib.parse
def track(self):
for _object in _objects:
req = Request('http://example.com/item.php?id='+str(_object))
req.add_header('User-Agent',
'Mozilla 5.0')
_URL = urlopen(req).read()
soup = bs4.BeautifulSoup(_URL, "html.parser")
allResults = []
i = 1
for hit in soup.findAll('cite'):
if ("% Off" in hit.text):
allResults.append(str(i) + ". " + hit.text + " | Item => " + _object)
i += 1
if (len(allResults) == 0):
print("No result found for this item => " + _object)
else:
for element in allResults:
print(element)
내가 연결이 웹 사이트에 실패, 또는 다른 이유로는 '나오지 않았어 그렇게 할 때, 예외를 throw 할 URL에 도달하면 "문제가 발생했습니다"
나는 socket.timeout을 사용해야 만하지만 코드에 어디에 넣어야합니까?
은 무엇 코드의 나머지 부분에 일어날 것인가? 거기에 예외를 던지면 다음 줄이 예외 이후에 실행됩니다. 수프 변수를 정의했습니다. – DarkSuniuM
그건 당신에게 달렸지 만, 예외를 잡으면 서 예외를 잡으려는 것입니다. 이 작업을 반복 할 때'continue'를 호출하고 다음'_object'를 계속 수행하십시오. –