2009-12-18 3 views
0

내가 다음 주소에서 셀레늄을 사용하여 버라이존 무선 전화 페이지를 긁어하려고 : 내가 갈 때셀레늄 get_html_source

http://www.verizonwireless.com/b2c/store/controller?item=phoneFirst&action=viewPhoneOverviewByDevice&deviceType=Phones&sortOption=priceSort&lid=//global//phones+and+accessories//cell+phones

내가 페이지에 도착하고 아무런 문제없이 페이지를 저장 get_html_source를 사용하지만 내가 저장 한 페이지를 보려면 전화에 대한 모든 데이터가 누락되었습니다. 나는 그것이 왜 전체 페이지를 저장하지 않았는지 알 수없는 것 같습니다.

미리 도움 주셔서 감사합니다.

참고 : 이것은 파이썬에서 수행되고 있습니다.

+3

(스크린 스크랩의 윤리 무시) 모든 데이터가 누락되었음을 어떻게 알 수 있습니까? 소스를 직접 보았거나 브라우저에로드 했습니까? 또한 내가 링크를 따라 갔을 때 쿼리 페이지에 내 위치를 묻는 메시지가 표시되고 휴대 전화가 없으므로 스크립트가 똑같이 표시됩니까? – slugster

+1

나는 내 위치를 묻는 슬러그스터와 같은 페이지를 얻는다. 또한 페이지가 다른 소스에서 콘텐츠를로드하고 HTML 소스에 휴대 전화 세부 정보가 포함되어 있지 않을 수도 있습니다. 원하는 작업에 따라 페이지의 스크린 샷을 대신 캡처 할 수 있습니다. –

답변

0

제공하신 URL을 방문합니다. 수동으로 소스를보고 웹 드라이버를 사용했습니다. 소스에서 얻을 수있는 것은 없습니다.

HTML 페이지에 표시되는 모든 데이터에 원본을 사용하여 액세스 할 수없는 경우가 있습니다 (대부분의 경우). 요즘 웹 디자이너는 AJAX를 자주 사용하고 원본에는 거의 아무것도 포함되어 있지 않기 때문에. 이 페이지는 JQuery와 JS 메소드로 가득차있다.

그것은 어쩌면 다른 경우에 당신을 도울 수, 내가 사용하는 코드입니다 :

from selenium import webdriver 
browser = webdriver.Firefox() 

url = "http://www.verizonwireless.com/b2c/store/controller?&item=phoneFirst&action=viewPhoneOverviewByDevice&deviceType=Phones&sortOption=priceSort&lid=//global//phones+and+accessories//cell+phones" 

browser.get(url) 
html_source = browser.page_source 
print html_source 
0

을 대신 문자열을 캡처 한 다음 메모장 파일에 저장하는 화면 시도에서 그것을 인쇄. 화면 버퍼의 크기가 제한되어 있으므로 일부 페이지 소스 콘텐츠가 표시되지 않습니다.