2016-10-25 7 views
1

私は公共の郡のレコードのウェブサイトを掻き集めるためのpythonスクリプトを作成しようとしています。私は最終的に所有者名のリストを持つことができ、スクリプトはすべての名前を実行し、最新の信頼情報(貸し手の名前と日付)を引き出すことができるようにしたい。以下のコードでは、所有者名を文字列 'ANCHOR EQUITIES LTD'と書いただけです。検索結果がURLを変更しない - PythonとSeleniumでWeb Scraping

フォームボックスにオーナーネームの入力を自動化するためにSeleniumを使用しましたが、「戻る」ボタンを押して結果が表示されても、WebサイトのURLは変更されません。私はxpathを使用してテーブル内の特定のテキストを検索しようとするが、私はそれを探すときにパスが存在しません。私は結果が表示されていない最初のページのxpathを検索しているため、パスが存在しないと判断しました。 URLを解析するだけ空白の検索フォームのHTMLを返しますので、BeautifulSoup4は、このような状況で

を動作しないでしょう以下の私のコードを参照してください:

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

browser = webdriver.Chrome() 

browser.get('http://deed.co.travis.tx.us/ords/f?p=105:5:0::NO:::#results') 

ownerName = browser.find_element_by_id("P5_GRANTOR_FULLNAME") 

ownerName.send_keys('ANCHOR EQUITIES LTD') 

docType = browser.find_element_by_id("P5_DOCUMENT_TYPE") 
docType.send_keys("deed of trust") 

ownerName.send_keys(Keys.RETURN) 

print(browser.page_source) 

#lenderName = browser.find_element_by_xpath("//*[@id=\"report_results\"]/tbody[2]/tr/td/table/tbody/tr[25]/td[9]/text()") 
    enter code here 

私は私に迷惑を与えている変数をコメントアウトしています。..してください助けて!!!!

問題を正しく説明できない場合は、お気軽に質問してください。

+0

が投げ*エラー*コード行である、またはあなたが間違っていると思うだけで何の各TRを反復処理する必要がありますか? – n1c9

答えて

0

あなたはほとんどそれを持っていると思います。

あなたは使用してあなたが興味を持っている要素にマッチ:

lenderNameElement = browser.find_element_by_xpath("//*[@id=\"report_results\"]/tbody[2]/tr/td/table/tbody/tr[25]/td[9]") 

次はあなたがその要素のテキストにアクセス:

lenderName = browser.find_element_by_xpath("//*[@id=\"report_results\"]/tbody[2]/tr/td/table/tbody/tr[25]/td[9]").text 
+0

ご協力いただきありがとうございます。私はそれを考え出した。 –

0

lenderName = lenderNameElement.text 

または単一のステップで

次のようなxp​​athを使用しましたか?

//table[contains(@summary,"Search Results")]/tbody/tr 

私はそれがperfect.In仕事ですチェックして、あなたは

関連する問題