使用批处理文件获取httpresponse的值

时间:2018-09-09 11:57:32

标签: batch-file

例如,我有以下HTTP响应:

Warning (from warnings module):
  File "C:\Users\...\AppData\Local\Programs\Python\Python37\Projects\New folder\double_pendulum.py", line 42
a = (-1/2)*(f1(th1,th2,p1,p2)*f2(th1,th2,p1,p2)*m.sin(th1-th2)+3*g*m.sin(th1))

如何仅获取值51.0和-0.1?我尝试这样做:

{
  "location": {
    "lat": 51.0,
    "lng": -0.1
  },
  "accuracy": 1200.4
}

我能够获得第一个值51.0,但是对于第二个值var2,我得到了1200.4值,该值应该为-0.1。这里有帮助吗?

1 个答案:

答案 0 :(得分:0)

为了更好地解释评论中我的一支班轮的工作:

module.exports = {
  networks: {
    development: {
      host: "localhost",
      port: 7545,
      network_id: "*",
      gas: 5000000
    }
  }
};

使用默认正则表达式模式过滤包含findstr "lat lng" <foo1.tmp lat的行,示例输出:

lng

您可以直接使用 "lat": 51.0, "lng": -0.1

来代替临时文件

要处理输出,curl/wget用定界符for /f(冒号,逗号,空格)对行进行解析。
前导delim被忽略,相邻的delim只被算作一个,因此

%% A包含:, / "lat"
%% B包含"lng" / 51.0

要删除%% A中的双引号,请使用for变量修饰符"-0.1"

总结(批处理)行:

~

设置变量

for /f "tokens=1,2 delims=:, " %%A in ('findstr "lat lng" ^<foo1.tmp') do set "%%~A=%%B"