马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?点击注册
x
【版权声明】 本文档翻译者:雨滴社区-相望无言 本文档仅用于雨滴社区站内交流,禁止转载,由此引发的一切责任及版权纠纷由转载、传播本文档者负责。
WebParser and
Relative Paths
这是一个关于检索和显示网站当这个html源用相对路径引用图片
Webparer 可以通过webparser measure得到完整的URL还有图片的名字,并且在measure中设置“DOWNLOAD=1”下载和显示图片,然后使用meter=image,measurename=XXXX引用那个下载图片的measure,可以显示图片。
问题
这个问题来了,当图片引用在HTML站点时使用的是相对路径。举个例子,rainmeter论坛上面的Logo:
<a href="./index.php" title="Board
index" id="logo"><img
src="./styles/saphic/imageset/site_logo.png"/></a>
你看到,在整个URL中webparser无法找到任何东西,所以 Download=1 失败。
解决办法
Webparser measure 可以通过方括号引用其他webparser measure在“URL”的位置关联它。这就是说你可以用第一个measure返回这个图片的名字和位置,然后在第二个measure中使用这个信息写硬编码在URL中,然后通过这个第二个measure搜索图像得到结果。
[MeasureImageLocation]
Measure=Plugin
Plugin=Plugins\WebParser.dll
UpdateRate=1800
Url=http://www.rainmeter.net/forum/
RegExp="(?siU)<img
src="(.*)"/>"
[MeasureImageDownload]
Measure=Plugin
Plugin=Plugins\WebParser.dll
UpdateRate=1800
Url=http://www.rainmeter.net/forum/[MeasureImageLocation]
StringIndex=1
Download=1
[MeterDisplayImage]
Meter=IMAGE
MeasureName=MeasureImageDownload
H=60
W=70
这里我们使用第一个Measure[MeasureImageLocation]得到这个图像的相对路径和文件名。
然后使用第二个Measure[MeasureImageDownload]把[MeasureImageLocation]和已知的URL结合起来,得到一个完整的家在measure,可以成功的下载图像,然后我们就可以显示它了。
|