And*_*res 3 ruby nokogiri web-scraping
我需要从网页中解析一个表.我在使用Ruby和Nokogiri之前做过这个,但这次我的方法不起作用.这就是我正在做的事情:
response = RestClient.get "http://www.webpage.com?page=0"
doc = Nokogiri::HTML(response.body,nil,'utf-8')
doc.remove_namespaces!
table = doc.xpath(".//*[@id='contsinderecha']/form/table/tbody/tr[4]/td/table/tbody/tr[5]/td/table")
Run Code Online (Sandbox Code Playgroud)
table只是一个空数组.答案很好,如果我这样做,put response.body我会得到网页的正文.
另外,要获得XPath我正在使用firebug.
对可能发生的事情有什么看法?
你的问题的解决方案是摆脱tbodyxPath 中的部分,如" 为什么这个Nokogiri XPath有一个空值返回? "中所示.
Firefox tbody为您生成了元素,这就是它们出现在Firefox的xPath中的原因,但它们不是原始页面源的一部分.
请尝试以下方法:
response = RestClient.get "http://www.buenosaires.gob.ar/areas/seguridad_justicia/seguridad_urbana/estaciones_servicio/buscador.php?&pag=0"
doc = Nokogiri::HTML(response.body,nil,'utf-8')
doc.remove_namespaces!
table = doc.xpath(".//*[@id='contsinderecha']/form/table/tr[4]/td/table/tr[5]/td/table")
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1455 次 |
| 最近记录: |