2016-10-28 2 views
-1

나는 파이썬으로 웹 스크랩에 매우 익숙하다. 스크랩하려는 웹 페이지에서 텍스트 상자에 'ABC'문자열을 입력하고 검색을 클릭 할 수 있습니다. 이것은 나에게 'ABC'의 세부 정보를 제공하지만 이지만 동일한 URL은입니다. URL에는 변화가 없습니다. 결과 세부 정보를 스크랩하려고합니다. "검색"클릭 전까지 작업했습니다. 그러나 검색 결과를 캡처하는 방법을 알지 못합니다 (검색 문자열 'ABC'의 세부 정보). 어떻게하면 좋을지 제안 해주세요.웹 스크랩 검색 결과 파이썬에서

from selenium import webdriver 
import webbrowser 

new = 2 # open in a new tab, if possible 
path_to_chromedriver = 'C:/Tech-stuffs/chromedriver/chromedriver.exe' # change path as needed 
browser = webdriver.Chrome(executable_path = path_to_chromedriver) 
url = 'https://www.federalreserve.gov/apps/mdrm/data-dictionary' 
browser.get(url) 

browser.find_element_by_xpath('//*[@id="form0"]/table/tbody/tr[2]/td/label[2]').click() 
browser.find_element_by_xpath("//select[@id='SelectedReportForm']/option[@value='1']").click() 
browser.find_element_by_xpath('//*[@id="Search"]').click() 
+0

왜 동일한 URL이 문제가됩니까? 데이터는 많은 사이트처럼 동적으로로드 될 수 있습니다. –

답변

-1

find_elements_by_xpath()을 사용하면 모든 검색 결과가 포함 된 xpath를 찾을 수 있습니다. 그런 다음 for 루프를 사용하여 반복하고 각 결과의 텍스트를 인쇄하십시오. 최소한, 당신이 원하는 것을 얻으십시오.

results = browser.find_elements_by_xpath('//table//tr') 
for result in results: 
    print "%s\n" % result.text