나는 웹 사이트를 긁어 내려고하고있다. 두 자원에서 긁어 낸 것을 배웠습니다 : 하나는 a
태그에서 href를 얻기 위해 tag.get('href')
을 사용했고, 하나는 tag['href']
을 사용했습니다. 내가 아는 한, 그들은 모두 똑같은 일을합니다. 이 코드 시도 때 :다른 방법으로 아름다운 수프를 사용하여 href 얻기
link_list = [l.get('href') for l in soup.find_all('a')]
를가 아니라 사전에 액세스하는 방식에의 .get
방법으로 일했다.
link_list = [l['href'] for l in soup.find_all('a')]
이 값은 KeyError
입니다. 나는 근근이 살아가는 것에 아주 신심이 많으므로 바보 같으면 용서해주십시오.
편집 - 두 메소드 모두 find_all 대신 find 메소드에 대해 작업했습니다.
key'가 딕셔너리에 존재하는 '경우가 두 가지 다른 방법입니다 - 똑같이 작동하지만,'key'가 당신의 dict에 없다면'l.get'은 기본값 (https://docs.python.org/2/library/stdtypes.html#dict.get)을 반환하고'l [key]'raised KeyError – SatanDmytro