0
일부 HTML을 큰 txt 파일 (~ 50k 줄)로 긁어 특정 URL 집합을 추출하려고합니다. 난 후 URL은 두 가지 패턴 중 하나에 : 두 번째 lxml로 URL 추출
<div class="pic">
<a href="https://www.site.com/joesmith"><img alt="Joe Smith" class="person_image" src="https://s3.amazonaws.com/photos.site.com/medium_jpg?12345678"></a>
</div>
<div class="name">
<a href="https://www.site.com/joesmith">Joe Smith</a>
</div>
내가 https://www.site.com/joesmith
입니다 필요 텍스트
첫째. 나는 처음으로 lxml로 작업하고 있는데,이 문제를 해결하는 데 어려움을 겪고있다.
는 여기에 내가 findall은과에는 FindText 모두이 코드를 시도했습니다
from lxml import etree
from io import StringIO
def read(filename):
file = open(filename, 'r')
text = file.read()
file.close()
out = unicode(text, errors='ignore')
return out
def parse(filename):
data = read(filename)
parser = etree.HTMLParser()
tree = etree.parse(StringIO(data), parser)
result = etree.tostring(tree.getroot(), pretty_print=True, method='HTML')
urls = result.findall('<div class="name">')
return urls
내 코드, 그리고 어느 쪽이든 결과는 동일 이다 "AttributeError : 'STR'객체 'findall은'을 어떤 속성이 없습니다". 나는 '결과'가 type()
인 문자열임을 확인했습니다.
URL을 추출하기 위해 올바른 경로로 가고 있습니까? 이 속성 오류를 어떻게 해결해야합니까?
이것은 위대하다, 나는 xpath에 대해서도 몰랐다. 감사! – Lenwood