1
运行以下内容,并且它应该返回公司名称。 xpath在firefox中工作,并返回公司名称。然而在nokogiri,这不会发生,它只是返回空字符串!nokogiri返回空白给出正确的xpath
require 'rubygems'
require 'nokogiri'
require 'open-uri'
doc = Nokogiri::HTML(open('http://www.careerbuilder.com/JobSeeker/Jobs/JobDetails.aspx?IPath=QHK
CV&ff=21&APath=2.21.0.0.0&job_did=J3G71D73BM9HCK1M84Z&cbRecursionCnt=1&cbsid=6d2aee1515ed404b8306d1a583592cd4-314600403-JQ-5'))
companyname = doc.xpath("/html[1]/body[1]/div[1]/div[1]/form[1]/div[1]/table[1]/tbody[1]/tr[2]/td[1]/div[1]/table[1]/tbody[1]/tr[1]/td[1]/div[1]/div[2]/table[1]/tbody[1]/tr[1]/td[2]").to_s
puts companyname
为什么浏览器增加了TBODY什么想法? – gpow
HTML标准定义浏览器必须这样做,另请参阅http://stackoverflow.com/questions/938083/why-do-browsers-insert-tbody-element-into-table-elements – akuhn