2016-06-10 9 views
-1

나는 아래의 '데이터 상품 ID'[itemid 필드의 숫자 (1234567) 사이트를 긁어 잡기 위해 노력하고있어 이제div 문자열에서 숫자를 파싱하려면 어떻게해야합니까?

<div class="submission" data-itemId="1234567" data-membershipId="00000" data-page="0"> 
    <div class="image Image"> 
    <img data-imageurl="test.png" src="test.png" class="img_lightbox" alt="Test" width="455" /> 
    <p class="lightboxExtra cf"> 
     <span class="title">Test-</span> 
     <span class="description"></span> 
     <a href="/test?itemId=1234567">PERMALINK <i class="fa fa-link"></i></a> 
    </p> 
    </div> 
    <div class="details"> 
    <a href="/Test?itemId=1234567">Test-</a> 
    </div> 
    <div class="meta cf"> 
    <div class="info"> 
     <p>Submitted by: <a class="submittedBy" data-membershipId="00000" href="/test?id=00000">TestUser</a> 
     </p> 
     <p>Source: <a href="test.png" target="_blank" class="externalLink exempt">media.tumblr.com</a> 
     </p> 
     <p class="actions"> 
     <a href="" class="trigger_report" data-itemId="1234567" data-membershipId="00000">Report</a> 
     <a href="/test/0000000" class="btn_modify exempt">Modify</a> 
     </p> 
    </div> 
    <div class="light " data-itemId="1234567"> 
     <span class="lightNumber">469</span> 
    </div> 
    </div> 
</div> 

을 내가 가지고 나 또한 포함 된 URL을 찾는 데 도움이 코드 동일한 번호 :

/테스트 해당 itemId = 1234567

012,351,641 :

from bs4 import BeautifulSoup 
import requests 

URL = "https://www.test.com" 
URLScraped = requests.get(URL) 
soup = BeautifulSoup(URLScraped.text, 'lxml') 

for Submission in soup.find_all('div', class_='submission'): 
    for ID in Submission.find_all('a'): 
     print ID.get('href') 

이 같은 것을 출력

/테스트? 해당 itemId = 1234567

/테스트? ID = 0000000

http://test.com/test.png

나는 그것을하지 알고이 때문에 단순히 보이는 아무것도를 검색하고 사용하고 코드 div '제출'내의 URL 그러나, 나는 HTML 코드의 첫 번째 줄에서 볼 수 있듯이 'data-itemId'에서 숫자 (이 경우 1234567)를 가져올 수 있기를 바랍니다. 명심 해, 여러 submission div가 있으므로 모든 숫자를 'data-membershipId'에서 배열로 가져 오려고합니다.

제안 사항?

답변

0

당신은 이런 식으로 할 수있는 :

for Submission in soup.find_all('div', 'submission'): 
    print Submission['data-itemid'] 

을 그리고 당신은 당신의 마지막 줄 나를 혼동 : 나는 배열로 '데이터 membershipId'에서 모든 번호를 얻으려고

배열에 'data-membershipId'를 원하십니까? 나는 당신이 'data-itemId'를 다른 곳에서 언급했기 때문에 물었다.

+0

확실히 data-itemid를 의미합니다. 코드가 작동합니다! 고맙습니다! – Schuby

관련 문제