2015-02-05 3 views
2

32 비트 Windows 컴퓨터에서 Python 2.7을 사용하고 있습니다.Python을 사용하여 데이터를 양식에 입력하고 결과 페이지에서 데이터 가져 오기

http://explorer.natureserve.org에 종 데이터를 입력하고 결과를 검색하려고하지만이를 수행하는 방법을 이해하는 데 어려움이 있습니다. 말할 필요도없이 필자는 Python에 비교적 익숙하지 않다.

나는 다음과 같은 코드가 있습니다

import selenium 
from selenium import webdriver 
from selenium.webdriver.common.keys import Keys 

driver = webdriver.Firefox() 
driver.get("http://explorer.natureserve.org") 
assert "NatureServe" in driver.title 
SciName = driver.find_element_by_name('searchSciOrCommonName') 
SciName.send_keys("Arabis georgiana") 
SciName.send_keys(Keys.RETURN) 
assert "No results found." not in driver.page_source 

위의 작품,하지만 지금은 다른 페이지로 데려 갈 것입니다 결과 페이지에 요소 Arabis georgiana을 선택해야합니다. 결과 페이지를 다시 파이썬으로 가져 와서 실제로 원하는 페이지로 리디렉션하는 방법은 무엇입니까? BeautifulSoup, 예를 들어, 당신은을 통해 HTML의 응답을 구문 분석 할 수 있습니다, 그리고

br.form = list(br.forms())[0] 
br.form['searchSciOrCommonName'] = 'butterfly' 
response = br.submit() 

:

답변

1

는이 식으로 searchSciOrCommonName 필드 값을 설정해야합니다

from bs4 import BeautifulSoup 

soup = BeautifulSoup(response) 

for item in soup.select('table[border="1"] > tr i')[1:]: 
    print(item.text.strip()) 

인쇄 것이다 :

Aglais io 
Callophrys mossii hidakupa 
Callophrys mossii marinensis 
Cercyonis pegala incana 
... 
Psora nipponica 
Flowering Plants 
Asclepias tuberosa 
관련 문제