2017-03-02 9 views
1

私は、次のWebページからテキストとして単一の値を抽出しようとしています。ウェブページから1つの要素を抽出する方法は?

Cascade River Rustic Campground

具体的には、私が "4" の値の後に "いいえサイトの" テキスト(スクリーンショットを参照)

enter image description here

後、私は分離することができましたよ以下の通りであるクロムを使用するXPath:

//*[@id="act_1"]/div[1]/table/tbody/tr/td[2] 

次のコードは、空のリストが得られる:

import urllib2 
from lxml import etree 

url = "https://www.fs.usda.gov/recarea/superior/recreation/camping-cabins/recarea/?recid=36913&actid=29" 

response = urllib2.urlopen(url) 
htmlparser = etree.HTMLParser() 
tree = etree.parse(response, htmlparser) 
x = tree.xpath('//*[@id="act_1"]/div[1]/table/tbody/tr/td[2]') 
print x 

予想される出力は次のようになります。私は、単一の要素を抽出することができる方法

>>> print x 
['4'] 

(すなわち"4")をWebページに挿入しますか?

答えて

2

それは私の作品(無のtbodyはありません注意してください)、ノードからテキストを抽出するためにtext()を使用このXPathを思わ:

x = tree.xpath('//*[@id="act_1"]/div[1]/table/tr/td[2]/text()') 

print(x[0].strip()) 
# 4 
関連する問題