[Rainmeter]
Update=1000
[MeasureParse]
Measure=Plugin
Plugin=WebParser.dll
URL=https://osu.ppy.sh/api/get_user?k=ApiKey&u=Primula
RegExp=(?siU)user_id":"(.*)".*username":"(.*)".*count300":"(.*)".*count100":"(.*)".*count50":"(.*)".*playcount":"(.*)".*ranked_score":"(.*)".*total_score":"(.*)".*pp_rank":"(.*)".*level":"(.*)".*pp_raw":"(.*)".*accuracy":"(.*)".*count_rank_ss":"(.*)".*count_rank_s":"(.*)".*count_rank_a":"(.*)".*country":"(.*)"
UpdateRate=60
[MeasureData1]
Measure=Plugin
Plugin=WebParser.dll
URL=[MeasureParse]
StringIndex=1
[MeterData1]
Meter=String
MeasureName=MeasureData1
X=0
Y=0
W=100
H=16
StringStyle=NORMAL
FontSize=12
FontColor=222,255,225,255
AntiAlias=1
Prefix="ID: "
[MeasureData2]
Measure=Plugin
Plugin=WebParser.dll
URL=[MeasureParse]
StringIndex=2
[MeterData2]
Meter=String
MeasureName=MeasureData2
X=0
Y=16
W=100
H=16
StringStyle=NORMAL
FontSize=12
FontColor=222,255,225,255
AntiAlias=1
Prefix="User: "
[MeasureData9]
Measure=Plugin
Plugin=WebParser.dll
URL=[MeasureParse]
StringIndex=9
[MeterData9]
Meter=String
MeasureName=MeasureData9
X=0
Y=32
W=100
H=16
StringStyle=NORMAL
FontSize=12
FontColor=222,255,225,255
AntiAlias=1
Prefix="Rank: "
[MeasureData11]
Measure=Plugin
Plugin=WebParser.dll
URL=[MeasureParse]
StringIndex=11
RegExpSubstitute=1
Substitute="(\d+).?(\d?)+":"\1"
[MeterData11]
Meter=String
MeasureName=MeasureData11
X=0
Y=48
W=100
H=16
StringStyle=NORMAL
FontSize=12
FontColor=222,255,225,255
AntiAlias=1
Prefix="PP: "
[MeasureData12]
Measure=Plugin
Plugin=WebParser.dll
URL=[MeasureParse]
StringIndex=12
RegExpSubstitute=1
Substitute="(\d+).(\d{1,2})?(\d?)+$":"\1.\2"
[MeterData12]
Meter=String
MeasureName=MeasureData12
X=0
Y=64
W=1000
H=16
StringStyle=NORMAL
FontSize=12
FontColor=222,255,225,255
AntiAlias=1
Prefix="ACC: "
Postfix="%"
I hope you know at least a little about Rainmeter so I won't explain too much.
Each 'MeasureData#' refers to each item in the RegExp (defined by StringIndex value).
Each 'MeterData#' refers to each MeasureData (with MeasureName=)
The 'Measures' hold data, the 'Meters' output data.
'UpdateRate' specifies how often the specified user will be queried for their data, I'm not sure of the minimal time Peppy would be happy with but I think 1min is a safe bet (It's sort of like ticks depending on what 'Update' is set as.. Eg. I've set Update to 1000ms and UpdateRate is set as 60, so the user's data will be queried every 60sec ~ 60*1000), you can also add in manual updating if you add something like this to one of the meters:
LeftMouseUpAction=[!CommandMeasure MeasureParse Update]