小编Dan*_*rin的帖子

在Elixir中安装依赖项

有没有办法直接通过命令行使用mix或安装Elixir项目的依赖项mix hex

我知道hex通过搜索注册表的选项

$ mix hex.search httpoison

Package    Version  URL
httpoison  0.11.0   https://hex.pm/packages/httpoison
Run Code Online (Sandbox Code Playgroud)

但是,我正在寻找类似的东西

$ mix hex.install httpoison
Run Code Online (Sandbox Code Playgroud)

这将修改我的mix.exs文件,将依赖项的名称和最新版本添加depsapplications列表中,然后运行该应用程序名称

$ mix deps.get
Run Code Online (Sandbox Code Playgroud)

拉取和编译依赖项.

elixir-mix elixir

22
推荐指数
1
解决办法
6980
查看次数

如何用Python解析SOAP XML?

目标: 获取<Name>标记内的值并将其打印出来.下面简化的XML.

<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
   <soap:Body>
      <GetStartEndPointResponse xmlns="http://www.etis.fskab.se/v1.0/ETISws">
         <GetStartEndPointResult>
            <Code>0</Code>
            <Message />
            <StartPoints>
               <Point>
                  <Id>545</Id>
                  <Name>Get Me</Name>
                  <Type>sometype</Type>
                  <X>333</X>
                  <Y>222</Y>
               </Point>
               <Point>
                  <Id>634</Id>
                  <Name>Get me too</Name>
                  <Type>sometype</Type>
                  <X>555</X>
                  <Y>777</Y>
               </Point>
            </StartPoints>
         </GetStartEndPointResult>
      </GetStartEndPointResponse>
   </soap:Body>
</soap:Envelope>
Run Code Online (Sandbox Code Playgroud)

尝试:

import requests
from xml.etree import ElementTree

response = requests.get('http://www.labs.skanetrafiken.se/v2.2/querystation.asp?inpPointfr=yst')

# XML parsing here
dom = ElementTree.fromstring(response.text)
names = dom.findall('*/Name')
for name in names:
    print(name.text)
Run Code Online (Sandbox Code Playgroud)

我读过其他人推荐zeep解析肥皂xml,但我发现很难理解.

python xml soap python-3.x zeep

6
推荐指数
2
解决办法
1万
查看次数

在 SSH 配置中使用 Bash 变量

.bash_profile在 shell 初始化中设置了服务器的主机名。如何使用该变量作为 sshconfig文件的一部分,如下所示:

.bash_profile

...

MY_SERVER='xxx.xxx.xxx.xxx'

...
Run Code Online (Sandbox Code Playgroud)

~/.ssh/config

Host my-host
    User uname
    HostName <MY_SERVER var here>
    IdentityFile ~/.ssh/my-pem.pem
Run Code Online (Sandbox Code Playgroud)

我都试过了

HostName $MY_SERVER
Run Code Online (Sandbox Code Playgroud)

HostName ${MY_SERVER}
Run Code Online (Sandbox Code Playgroud)

但两者都会导致错误: ssh: Could not resolve hostname $MY_SERVER: nodename nor servname provided, or not known

有没有办法在不运行 shell 初始化脚本以将主机名注入配置文件的情况下执行此操作?

linux ssh bash shell

4
推荐指数
1
解决办法
4862
查看次数

标签 统计

bash ×1

elixir ×1

elixir-mix ×1

linux ×1

python ×1

python-3.x ×1

shell ×1

soap ×1

ssh ×1

xml ×1

zeep ×1