반응형
for imgsrc in Soup.findAll('img', {'class': 'sizedProdImage'}):
if imgsrc:
imgsrc = imgsrc
else:
imgsrc = "ERROR"
patImgSrc = re.compile('src="(.*)".*/>')
findPatImgSrc = re.findall(patImgSrc, imgsrc)
print findPatImgSrc
'''
<img height="72" name="proimg" id="image" class="sizedProdImage" src="http://imagelocation" />
이것이 내가 추출하려는 것이며 얻는 것입니다.
findimgsrcPat = re.findall(imgsrcPat, imgsrc)
File "C:\Python27\lib\re.py", line 177, in findall
return _compile(pattern, flags).findall(string)
TypeError: expected string or buffer
'' '
해결 방법
re.findall에 beautifulsoup 노드를 전달하고 있습니다. 문자열로 변환해야합니다. 시험:
findPatImgSrc = re.findall(patImgSrc, str(imgsrc))
더 나은 방법은 beautifulsoup이 제공하는 도구를 사용하는 것입니다.
[x['src'] for x in soup.findAll('img', {'class': 'sizedProdImage'})]
'sizedProdImage'클래스의 img 태그의 모든 src 속성 목록을 제공합니다.
참조 페이지 https://stackoverflow.com/questions/8289957
반응형
'파이썬' 카테고리의 다른 글
파이썬 Python '요청'모듈이있는 프록시 (0) | 2020.09.22 |
---|---|
파이썬 Django : 뷰에서 형식 날짜를 얻는 방법? (0) | 2020.09.22 |
파이썬 OOP : getter / setter 메서드 (0) | 2020.09.22 |
파이썬 numpy의 2D 배열에서 특정 위치에 행을 삽입합니까? (0) | 2020.09.22 |
파이썬 Python 인스턴스 변수는 스레드로부터 안전합니까? (0) | 2020.09.22 |
댓글