WebParser
Plugin=Plugins\WebParser.dll
WebParser从网页上面读取信息.这个插件使用Regular
Expressions(正则表达式),因此它能从许多网页上面提取信息.这个插件可以用来获取当前的电视节目单,天气条件,股票信息,新闻等几乎任何网上面的信息.而缺陷在于,倘若你不熟悉编程语言的话,正则表达式会显得有点复杂(即使你会那么一点点).
你可以在WebParser
Primer 和
RSS
Skin Tutorial上面找到相关的更加多的信息.
Options:
Url
被下载和解析的文件的Url.Url也可是另一个WebParser-measure,在这种情况下,可以重复使用已经下载的页面并且解析信息(例如:在同一文件上面展示不同的StringIndex).要做到这一点,只需要给Url的measure后面加上measure名(例如:Url=[MeasureExample]).
Note:WebParser也可以用来读取解析电脑上面的文件,使用Url=file://C:\path\file.ext.
RegExp
正则表达式解析.这个插件兼容Perl Compatible Regular Expressions,点击这里了解更多.
FinishAction
页面下载解析完成时的Bang或者command.
StringIndex
定义返回RegExp检测到的第几个字符串,你可以设置Debug=1,将所有的匹配字符串添加到日志文档,从而得到正确的索引.
StringIndex2
当从其他的measure中的RegExp调取特定的字符串时使用这个参数, (即Url指向的measure,而不是真正的URL).在这种情况下,StringIndex定义了其他RegExp返回的结果的索引,StringIndex2则定义measure的Regexp的索引.如果measure里没有定义RegExp,那么此参数无效果.
UpdateRate
网页下载间隔.此值是相对于主更新频率的(Update).最好是限制频率,防止不断向服务器请求数据(译者认为这会消耗带宽).假如更新频率过高,网站管理员可能会禁止从该网站获取信息(加大了网站服务器压力).因此,如果主要更新频率是1000(即一秒钟,这是默认的)设置此数值为60,那么该measure将一分钟更新一次数据.
DecodeCharacterReference
自动解码HTML.这将消除对于”Substitute=”在替换”", &, <, >”(像&,<,>等常用的网络符号)时的需要.
1-不作任何修改(默认).
2-对数字字符和字符实体进行解码.
3-仅对数字字符进行解码.
4-仅对字符实体进行解码.
Debug
设置为1则将调试信息写入日志文档中.(注意,此时Rainmeter必须开启调试模式,启用日志文档).设置为2则将下载的网页内容转存到C:\WebParserDump.txt.这可能是有用的,因为有些服务器会发送不同的信息,这可能取决于客户端的请求.请记住,如果它正常工作,请从配置文件中删除.
Debug2File
如果调节设置为2,那么这个参数将允许你设置下载网页的路径和文件名.
Usage:
[WebParserMeasure]
Debug2File="C:\filename.txt"
Debug=2
[WebParserMeasure2]
; Saves to current skin folder
Debug2File="Debug2File.txt"
Debug=2
Notes:
必须含有至少一个文件名,只有路径时无效.
必须是已经创建好了的路径,插件不会自动创建文件夹.
Download
如果设置为1,URL对应的网址将被下载之一个临时的文件夹,文件的名称将以字符串的形式返回.假如RegExp定义了解析这段字符串作为一个链接来下载这张图片,这个measure可以使用在Image meter上,从网上下载图片,并且展示该图片.
DownloadFile
当Download设置为1时,该文件被下载到皮肤文件夹里面的DownloadFile文件夹下,该文件的文件名使用的就是这里定义的文件名.加入你把它设置为”DownloadFile=image.jpg”,DownloadFile文件夹将在皮肤文件夹下被创建,然后下载的图片被保存为”image.jpg”.如果你定义为”DownloadFile=photo\image.jpg”时,将在皮肤文件夹下创建DownloadFile文件夹,并且在该文件夹下再创建一个名为”照片”的子文件夹,将下载的图片以”image.png”保存到该文件夹中.
Notes:
这个文件夹不是临时文件夹,所以即使关闭皮肤它不会被删除.
为了规范文件路径,不可用绝对路径,指定到DownloadFile文件夹的规范也是不可能的.
ErrorString
定义解析错误时返回的字符串.
ForceReload
如果设置为1,WebParser只在资源被修改的情况下读取资源.
ProxyServer
代理服务器名称.该插件不支持任何身份验证,因此可以使用不需要它的服务器或者您需要一些不同的方式通过身份验证使用代理服务器.
ProxyServer=serverIP:port
ProxyServer=servername:port
CodePage
定义已下载的web页的字符编码.例如:
CodePage=28605解释为Latin 9 (ISO-8859-15).如果设置为0,那么没有转换. CodePage=65001为UTF-8.你可以点击这里了解更多.
示例皮肤:
从Slashdot's
RSS提要检索标题和第一项.
[MeasureRSSTitle]
Measure=Plugin
Plugin=Plugins\WebParser.dll
UpdateRate=3600
Url=http://slashdot.org/slashdot.rdf
RegExp="(?siU)<title>(.+)</title>(.+)<item(.+)<title>(.+)</title>"
StringIndex=1
FinishAction=!Redraw
[MeasureRSS]
Measure=Plugin
Plugin=Plugins\WebParser.dll
Url=[MeasureRSSTitle]
StringIndex=4
Substitute="&":"&"
从芬兰气象研究所下载当前气象图.
[MeasureDL]
Measure=Plugin
Plugin=Plugins\WebParser.dll
UpdateRate=1800
Url=http://www.fmi.fi/saa/sadejapi_5.html?selected=7
RegExp="(?siU)ennuste"
SRC=\"(.*)\"></TD>"
FinishAction=!Redraw
StringIndex=1
Download=1
[MeterImage]
Meter=IMAGE
MeasureName=MeasureDL
X=0
Y=0
W=400
H=300