我试图写一个简单的脚本,只需检查网页的特定值:从猛砸
$("a#infgHeader").text() == "Delivered";
我想从一个bash脚本来自动执行此每隔一段时间运行一次。我用Python也很好。我需要实质上发出一个HTTP请求,获得响应,并有一种方法来智能地查询结果。有没有一个库可以帮助我查询部分?
我试图写一个简单的脚本,只需检查网页的特定值:从猛砸
$("a#infgHeader").text() == "Delivered";
我想从一个bash脚本来自动执行此每隔一段时间运行一次。我用Python也很好。我需要实质上发出一个HTTP请求,获得响应,并有一种方法来智能地查询结果。有没有一个库可以帮助我查询部分?
Xpath非常适合查询html。
事情是这样的:
//a[@id='infgHeader']/@text
Chrome开发工具,您可以使用搜索框的元素标签来测试表达。在终端
快速运行:
$echo '<div id="test" text="foo">Hello</div>' | xpath '//div[@id="test"]/@text'
Found 1 nodes:
-- NODE --
text="foo"
http://pypi.python.org/pypi/spynner/1.10
Spynner会让你选择使用jQuery语法从DOM元素。
还有其他的库可以让你解析HTML。 BeautifulSoup,lxml
固定链接:https://pypi.python.org/pypi/spynner/ – 2016-04-09 02:23:08
Alex MacCaw写了一篇不错的文章,讲述了您使用node.js/JavaScript时所要求的。它也带来了很多功能。
要解析HTML是不平凡普通的网站,因为HTML可能不太守和DOM可以通过Java的脚本在运行时被修改,所以在这种情况下,解析HTML可能没有意义。
最好的办法是使用浏览器直接访问DOM中,你可以使用一个无头的浏览器,如phontomjs,所以你可以编写脚本,并检查任何你需要检查
万岁XPATH!我想知道这是否有帮助。我不知道,因为HTML!= XML,但是,嘿,如果它工作,它的工作原理。 – 2012-02-29 19:33:49
正确的语法似乎是'xpath -e ...'。 – Tgr 2016-03-23 14:38:03
'xpath'与非严格的XML HTML代码很差。当它在100行的HTML片段上运行时,它会冻结一分钟,然后随着“不匹配的标签”错误而死亡,显然是因为代码有''而不是''。 – Tgr 2016-03-23 14:48:19