我正试图从this page
中获取一些信息但是我无法抓取三条数据。第一个是等级,即靠近顶部的YDS旁边的“5.6”。第二个是FFA:P.Adamson,M.Peck,2008年7月,在FA:旁边列出。第三个是Trad,30',列在类型旁边。
我有的xpath查询
grade = tree.xpath('//[@id="rspCol800"]/div[1]/div[1]/span/table/tbody/tr[2]/td[2]/text()')
length = tree.xpath('//*[@id="rspCol800"]/div[1]/div[1]/span/table/tbody/tr[1]/td[2]/text()')
first_ascent = tree.xpath('.//*[@id="rspCol800"]/div[1]/div[1]/span/table/tbody/tr[3]/td[2]/text()/text()')
我试图从页面上的几个不同的地方获得成绩,因为它列在几个地方,但还没有这样的运气。任何帮助将不胜感激
答案 0 :(得分:0)
不确定您使用的是哪种框架,但这似乎有效:
from lxml import html
import urllib2
req = urllib2.Request('http://www.mountainproject.com/v/my-other-woman-is-a-hand-crack/107465606')
response = urllib2.urlopen(req)
data = response.read()
tree = html.fromstring(data)
grade = tree.xpath('//div[@id="rspCol800"]/div[1]/div[1]/span/table/tr[2]/td[2]/span/text()')[1]
length = tree.xpath('//*[@id="rspCol800"]/div[1]/div[1]/span/table/tr[1]/td[2]/text()')[0]
first_ascent = tree.xpath('.//*[@id="rspCol800"]/div[1]/div[1]/span/table/tr[3]/td[2]/text()')[0]
print grade, length, first_ascent