我正在尝试从其他网站检索一些信息到我的网站(合法)...我是ASP Classic和XML DOM的新手。我知道XML DOM但没有足够的知识来使用它。我使用下面的代码从其他网站获取页面,并且其工作正常
Dim xml
set xml = Server.CreateObject("Microsoft.XMLHTTP")
xml.Open "GET", "http://www.midwayusa.com/Product/"&sCode , false
xml.Send
Dim strRetrive
strRetrive=xml.responseText
现在,问题是获取此页面的产品状态。我看过这个页面的源代码,如下所示:
<div id="status_block">
<span id="persistentStatus">Status:</span>
<link itemprop="availability" href="http://schema.org/InStock" />
<div id="productStatus">
Available
<a class="helpicon mimo" title="Available" href="/Content/htm/Legacy/product_status.htm#200">
</a>
</div>
.....
我想从DIV id = productStatus获取价值。 据我所知,我可以使用XPath Query或其他工具吗?如果是这样,你可以给我更多信息吗?
答案 0 :(得分:0)
XMLHTTP将为您提供全文。这就是它的工作方式。通常,如果您对要求的站点拥有控制权,那么您可以确保服务器返回的内容最小化。在使用XMLHTTP请求JSON或以后可以重用的XML数据时,它非常有用。
如果您正在从无法控制的网站进行抓取。然后,您将坚持使用HTML作为返回的响应。你需要做的是使用vbscripts字符串函数,例如replace和split来删除div id =“productStatus”之前的所有文本,如果你知道没有更多嵌套的div,那么你可以在/ div&gt;之后删除所有内容。结束标签。只留下你的字符串中的div。
每种情况都不同,但习惯于使用字符串函数来清理数据并将其修剪为对您有用的内容。