Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/xpath/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用YQL和XPath从HTML获取数据_Html_Xpath_Yql - Fatal编程技术网

使用YQL和XPath从HTML获取数据

使用YQL和XPath从HTML获取数据,html,xpath,yql,Html,Xpath,Yql,我一直在玩YQL,试图更好地理解它,因为它看起来是一个非常整洁的服务,但我必须承认,当它出现时,我是一个非常新手。我已经阅读了一些教程和示例,并在一定程度上理解了它们。我决定下一步要做的是尝试从一个网站上提取统计数据,在一个潜在的球队网站上显示联赛统计数据,看看它是否有效 我的YQL查询是 select * from html where url="http://www.nwjhl.com/leagues/standingsTotals.cfm?leagueID=15654&client

我一直在玩YQL,试图更好地理解它,因为它看起来是一个非常整洁的服务,但我必须承认,当它出现时,我是一个非常新手。我已经阅读了一些教程和示例,并在一定程度上理解了它们。我决定下一步要做的是尝试从一个网站上提取统计数据,在一个潜在的球队网站上显示联赛统计数据,看看它是否有效

我的YQL查询是

select * from html
where url="http://www.nwjhl.com/leagues/standingsTotals.cfm?leagueID=15654&clientID=4594"
这返回了一些结果,但显然我不需要全部内容,我只是想拉排名。我已经设法在本地页面上显示结果,但是当我试图将结果缩小到只显示团队排名时,我没有在树中返回结果。我认为这与我的xpath有关

select * from html
where url="http://www.nwjhl.com/leagues/standingsTotals.cfm?leagueID=15654&clientID=4594"
and xpath="/html/body/table/tbody/tr[3]/td/table/tbody/tr/td[2]/table/tbody/tr[2]"

作为新手,我不知道这是否可行,只是想知道是否有人能引导我走上正确的道路,或者是否知道关于这个案例的好教程。

这应该是你想要的:

SELECT * FROM html 
WHERE url="http://www.nwjhl.com/leagues/standingsTotals.cfm?leagueID=15654&clientID=4594" 
AND xpath="//tr[@class='boxscores_tables1'] | //tr[@class='boxscores_tables2']"

这应该是您想要的:

SELECT * FROM html 
WHERE url="http://www.nwjhl.com/leagues/standingsTotals.cfm?leagueID=15654&clientID=4594" 
AND xpath="//tr[@class='boxscores_tables1'] | //tr[@class='boxscores_tables2']"

问题在于xpath——从firebug/firefox中提取xpath时要小心,因为它会清理表。问题在于xpath——从firebug/firefox中提取xpath时要小心,因为它会清理表。