2014-12-19 3 views
-4

은 가능한 다음 HTML에서 값웹 사이트 스크레이퍼

data-price="4.7056" 

를 검색하는 것입니다

'<tr style="cursor:pointer;" class="percent_price_list price_list_content" data-count="500" data-price="4.7056"> 
       <td class="quick_list_count">500k</td> 
       <td>£4.71</td> 
       <td>£23.53</td> 
      </tr>' 

나는 두 개의 HTML 태그 사이에 일반적으로 정보를 긁어하는 방법을 알고 그래서이 일에 대해 가지 방법 경우 위에 언급 된 것을 얻는 방법을 모릅니다. 나는 아름다운 수프 도서관을 알고 있는데,이 상황에서 유용할까요?

+1

아름다운 스프를 사용하십시오. – nwk

+0

사용중인 언어, 플랫폼 또는 프레임 워크에 대해 더 알고 싶습니다. Javascript를 사용할 수 있다면 간단한 'element.getAttribute ('data-price ')가 작동하지만 어떻게 든 자바 스크립트를 사용하지 않는다고 생각합니다. – macguru2000

답변

1

BeautifulSoup은 무엇보다도 HTML 파서입니다. 다음을 시작해야합니다.

from bs4 import BeautifulSoup 

html = """<tr style="cursor:pointer;" class="percent_price_list price_list_content" data-count="500" data-price="4.7056"> 
       <td class="quick_list_count">500k</td> 
       <td>£4.71</td> 
       <td>£23.53</td> 
      </tr>""" 
soup = BeautifulSoup(html) 
for item in soup.find_all('tr', {'data-price': True}): 
    print(item['data-price']) 

# 4.7056 
0

예, BeautifulSoup은이를 달성 할 수 있으며 this answer에 있습니다. 당신은 그것의 소리로 태그의 가치를 얻으려고합니다. 다른 질문에서

발췌문 :

print soup.find('span', {"class":"thisClass"})['title']

편집 : 코드 서식에 대한 죄송합니다, 그것은 모바일 앱에 문제가 있습니다.

관련 문제