我正在使用 QTP/UFT 来自动化我的 UI 应用程序。我想将 UI 值与 REST API 响应中的值进行比较。我是 VBScript 新手,我已经编写了调用 REST API 并获取响应的方法,但我正在尝试找到如何使用 VBScript 解析 JSON 的解决方案。
请帮助我如何解析 json 响应?(下面的代码)或者是否更容易接受 xml 中的 REST 响应并在 VBS 中解析它?
感谢您的帮助和想法。谢谢!
userName = "abc@xyz.com"
password = "blah.123"
acctNumber = "01999994201"
URL1="https://CXaic-blah.blah.ocp.blah.com:243/ic/api/integration/v1/flows/rest/blah_ACCNTSEARCH/1.0/accountSearch?accountNumber="
URL=URL1&acctNumber
Set objXmlHttpMain = CreateObject("Msxml2.ServerXMLHTTP")
on error resume next
objXmlHttpMain.open "GET",URL, False , userName, password
objXmlHttpMain.setRequestHeader "Accept", "application/json"
objXmlHttpMain.setRequestHeader "charset", "UTF-8"
objXmlHttpMain.send
restjsonresp = objXmlHttpMain.responseText
Run Code Online (Sandbox Code Playgroud)
下面是我得到的 json 响应的格式:
{
"searchResponse":{
"element":[
{
"accType":"R",
"accountNumber":"1111111",
"accountStatus":"A",
"taxId":""
}
]
}
}
Run Code Online (Sandbox Code Playgroud) 我想要一个函数来计算数字命理.例如,如果我输入"XYZ",那么我的输出应该是3.
这是它变成3:
X = 24
Y = 25
Z = 26
Run Code Online (Sandbox Code Playgroud)
添加它变成75再次加起来12(7 + 5)再次加起来3(1 + 2).同样,无论我应该传递什么名字,我的输出应该是一位数的分数.
我正在寻找一种从网页上抓取URL并将其输出到文本文件的方法.例如,如果一个页面包含多个http://example.com/article 我想抓住这两个网址,并输出到一个文本文件中.
我有一个VBScript文件.当它在电脑上它工作正常.我想把它放在一个php网站上,点击按钮即可执行它.但我没有成功.它实际上得到了电脑信息.希望它能在用户机器上运行.任何想法将不胜感激.如果或者如果有人知道如何使用jscript
这是代码:
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colSettings = objWMIService.ExecQuery _
("Select * from Win32_OperatingSystem")
For Each objOperatingSystem in colSettings
Wscript.Echo "OS Name: " & objOperatingSystem.Caption
Wscript.Echo "Version: " & objOperatingSystem.Version
Wscript.Echo "Available Physical Memory: " & _
objOperatingSystem.FreePhysicalMemory
Next
Set colSettings = objWMIService.ExecQuery _
("Select * from Win32_ComputerSystem")
For Each objComputer in colSettings
Wscript.Echo "Total Physical Memory: " & _
objComputer.TotalPhysicalMemory
Next
Set objWMIService = GetObject("winmgmts:\\" & strComputer & …Run Code Online (Sandbox Code Playgroud) 我已经对这个问题的一些其他回答进行了巡航和实施,但我仍然没有运气.我仍然得到错误.
If ((bReport And bIsDate And CheckPermissions("lotsales")) Or Request.QueryString("report")) Then
OpenDB
Dim oRs, sSQL, sSQL2, iCancellations, iSales, sDate, sInitDate, sEndDate, iPhaseID, iPhaseNumber, rowCount
sInitDate = Request("startDate")
sEndDate = Request("endDate")
sSQL = "sp_get_lot_sales_test '" & sInitDate & "', '" & sEndDate & "', " & sPhase & ", '" & sReportView & "'"
'response.write vbNewLine & "<!-- sql: " & sSQL & "-->" & vbNewLine
'response.write sSQL
'response.Flush
Set oRs = ExecuteCommand(sSQL,1)
End If
Run Code Online (Sandbox Code Playgroud)
然后是错误发生的地方 -
If (oRs.EOF) Then <-- fails …Run Code Online (Sandbox Code Playgroud) 我有一个看起来像这样的字符串
[APPLE PIE] Sei Shoujo Sentai Lakers 3 Battle Team Lakers 3 (100% FULL-PIC)_20121104_032834
Run Code Online (Sandbox Code Playgroud)
我想删除字符串末尾的数字.基本上是字符串末尾的16位数字.这是我到目前为止编写的代码
txt="[APPLE PIE] Sei Shoujo Sentai Lakers 3 Battle Team Lakers 3 (100% FULL-PIC)_20121104_032834"
alert(Left(txt,75))
Run Code Online (Sandbox Code Playgroud)
问题是字符串会有所不同,因此每个字符串都会有不同的字符数.那么我如何删除vbscript中字符串末尾的数字?
我是VB脚本的新手,需要某个程序的帮助才能执行以下操作:有人可以帮帮我。如果可以将整个程序嵌入到一个vbscript中,那就太好了。
编写脚本进行检查
我有一个脚本,它监视一些文件夹的子文件夹,检查它们的创建日期,如果DateDiff来自创建的时间,而现在是超过730(2年),它会删除这个文件夹.问题在于,如果在2015年5月16日在PC上设置当前时间 - 脚本将删除文件夹,这并不酷.我想从一些互联网服务中获取时间,但无法保证PC将连接到互联网.所以我试图获得BIOS时间(我相信没有用户可以将其更改为错误),并将文件夹的创建时间与此时间进行比较.但是,遗憾的是我没有找到如何做到这一点的方式.也许你知道如何实现这个任务?
我想在代理后面运行一个VB脚本.代理是为系统定义的:

但是,代理不适用于我的vb脚本.如果我运行以下代码:
Dim objHttp
Set objHttp = CreateObject("Msxml2.ServerXMLHTTP")
objHttp.Open "GET", "http://www.google.de", False
objHttp.Send
output = objHttp.ResponseText
Set objHttp = Nothing
Run Code Online (Sandbox Code Playgroud)
我收到超时错误:

似乎脚本中没有使用代理.是否可以手动设置代理.
首先,我已经看过网站上的类似问题,但无法发现我的方式错误.
我也是vb的新手,所以这也没有帮助.
请帮助一个真正的新手......
谢谢
dim profileSize
dim oFS, oFolder
set oFS = WScript.CreateObject("Scripting.FileSystemObject")
Set wshShell = WScript.CreateObject( "WScript.Shell" )
strUserName = wshShell.ExpandEnvironmentStrings( "%USERNAME%" )
set oFolder = oFS.GetFolder("\\burns\Profiles\" + strUserName + ".V2")
ShowFolderDetails oFolder
sub ShowFolderDetails(oF)
dim F
profileSize = of.Size
if profileSize > 1006582400 Then
WriteFileText(profileSize, strUserName)
End If
if profileSize > 2516582400 Then
WriteFileText(profileSize, strUserName)
wscript.echo "Your Windows user profile is too big! Please contact the IT Office"
WScript.Quit
End if
for each F in oF.Subfolders
'ShowFolderDetails(F)
next …Run Code Online (Sandbox Code Playgroud)