BeautifulSoup을 사용하여 웹 페이지의 내용을 읽습니다. 내가 원하는 것은 <a href>
을 http://
으로 시작하는 것입니다. 나는 beautifulsoup에서 당신이 속성으로 검색 할 수 있음을 안다. 나는 단지 구문 문제가 있다고 생각한다. 나는 그것이 뭔가 갈 것이라고 상상할 것입니다.BeautifulSoup을 사용하여 웹 페이지에서 절대 링크를 가져 오려고 시도합니다.
page = urllib2.urlopen("http://www.linkpages.com")
soup = BeautifulSoup(page)
for link in soup.findAll('a'):
if link['href'].startswith('http://'):
print links
하지만 그 반환
Traceback (most recent call last):
File "<stdin>", line 2, in <module>
File "C:\Python26\lib\BeautifulSoup.py", line 598, in __getitem__
return self._getAttrMap()[key]
KeyError: 'href'
어떤 아이디어가? 미리 감사드립니다.
편집 특히이 사이트는 아닙니다. 스크립트는 사용자로부터 URL을 가져옵니다. 따라서 내부 링크 대상이 문제가 될 수 있습니다. 그 이유는 페이지에서 <'a'>
만 원하는 이유이기도합니다. 내가 www.reddit.com
으로 켤 경우, 시작 링크 구문 분석과이에 가져옵니다
<a href="http://www.reddit.com/top/">top</a>
<a href="http://www.reddit.com/saved/">saved</a>
Traceback (most recent call last):
File "<stdin>", line 2, in <module>
File "C:\Python26\lib\BeautifulSoup.py", line 598, in __getitem__
return self._getAttrMap()[key]
KeyError: 'href'
reddit.com의 내용은 입니다. 따라서 구문 오류가 아니라 API입니다. –