小编Mar*_*ase的帖子

你如何在FileMerge中进行3向合并?

我看到了指定三个文件(左,右和祖先)的选项,但似乎无法实际显示祖先.

在此输入图像描述

底部窗格显示合并的结果.我宁愿看到原始内容是什么,所以我可以理解冲突左右两侧的背景.这可能吗?FileMerge有很糟糕的帮助文档.

macos filemerge

5
推荐指数
2
解决办法
7229
查看次数

如何删除 lxml.html 中无关紧要的空格?

我很惊讶 lxml.html 在默认情况下解析 HTML 时会留下无关紧要的空白。我也很惊讶我找不到任何明显的方法让它不这样做。

Python 2.7.3 (default, Apr 10 2013, 06:20:15) 
[GCC 4.6.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import lxml.etree
>>> parser = lxml.etree.HTMLParser(remove_blank_text=True)
>>> html = lxml.etree.HTML("<p>      Hello     World     </p>", parser=parser)
>>> print lxml.etree.tostring(html)
<html><body><p>      Hello     World     </p></body></html>
Run Code Online (Sandbox Code Playgroud)

我希望结果是这样的:

>>> print lxml.etree.tostring(html)
<html><body><p>Hello World</p></body></html>
Run Code Online (Sandbox Code Playgroud)

BeautifulSoup4 用 html5lib 解析器做同样的事情:

>>> from bs4 import BeautifulSoup
>>> soup = BeautifulSoup("<p>      Hello     World     </p>", "html5lib")
>>> soup.p
<p>      Hello     World     </p>
Run Code Online (Sandbox Code Playgroud)

经过一番研究,我发现HTML5解析规范并没有规定去除连续的空格;这是在渲染时完成的。所以我知道从技术上讲,这些库中的任何一个都没有责任执行相同的行为,但它似乎足够有用,以至于我很惊讶他们都没有。

有人能证明我错了吗?

编辑:

我知道如何使用正则表达式去除空格——这不是我的问题。(我也知道如何搜索有关正则表达式的问题。) …

python html-parsing lxml.html

5
推荐指数
1
解决办法
2407
查看次数

Angular.Dart如何动态地将组件添加到DOM?

我的项目中有一个自定义的@NgComponent,如果我将它放在应用程序的静态HTML中,它就可以工作.我想弄清楚的是如何动态地向DOM添加一个?如果我构造我的Component的一个实例,它似乎不是Element类型,因此它不能直接添加到DOM中元素的子元素.是否有另一种方法来构造我的组件或将其包装以便注入DOM?

例如,我天真地期望能够做类似的事情:

dom.Element holderEl = dom.document.querySelector("#my-holder");
holderEl.children.add( new MyComponent() ); 
Run Code Online (Sandbox Code Playgroud)

但我也试过使用innerHTML将包含我的自定义元素的HTML附加到元素上

holder.innerHtml="<my-component></my-component>"
Run Code Online (Sandbox Code Playgroud)

并使用document.createElement()创建元素

dom.Element el = dom.document.createElement("my-component");
dom.document.body.append(el);
Run Code Online (Sandbox Code Playgroud)

但添加时似乎没有实现该组件.

谢谢,帕特

dart angular-dart

5
推荐指数
1
解决办法
1678
查看次数

boto3资源的API文档在哪里?

我了解到,它boto3提供了两个抽象层次:一个称为低层API的API client,它是AWS HTTP API的薄包装,另一个resource是提供真实Python对象的高级客户端。我的问题是,API的API文档在resource哪里?

我找到了这个:

https://boto3.readthedocs.io/zh_CN/stable/reference/services/ec2.html#client

但这描述了clientAPI,并且没有到resourceAPI的一对一映射。例如,枚举实例describe_instances()client对象上被调用,并且instances.all()resource对象上被调用。

接下来,我发现了这一点:

http://boto3.readthedocs.io/en/stable/reference/core/resources.html?highlight=resource

它描述了一组基类和工厂方法,但没有描述EC2之类的特定服务的API。

在运行时,我打印了一个感兴趣的对象,发现它是一个boto3.resources.factory.ec2.ServiceResource,但是搜索boto3文档不会显示该资源的任何人类可读文档。

是否有API文档说明所有不同的Python类是什么,以及它们具有哪些属性/方法?我可以在运行时将其打印出来,例如,print(dir(ec2))但这是一种发现API的乏味方法。

python amazon-web-services boto3

5
推荐指数
2
解决办法
1020
查看次数

在protobuf中需要`oneof`?

我想制作一个Event可以包含几种不同事件类型的protobuf 消息.这是一个例子:

message Event {
    required int32 event_id = 1;

    oneof EventType {
        FooEvent foo_event = 2;
        BarEvent bar_event = 3;
        BazEvent baz_event = 4;
    }
}
Run Code Online (Sandbox Code Playgroud)

这样可以正常工作,但有一点让我感到困惑的是,这EventType是可选的:我只能编码一个对象,event_id而protobuf不会抱怨.

>>> e = test_pb2.Event()
>>> e.IsInitialized()
False
>>> e.event_id = 1234
>>> e.IsInitialized()
True
Run Code Online (Sandbox Code Playgroud)

有没有办法要求EventType设置?如果重要的话,我正在使用Python.

python protocol-buffers

3
推荐指数
1
解决办法
2832
查看次数

如何为机器和人类使用一个REST API?

我对使用REST API构建Web服务感兴趣.我一直在阅读关于HATEOAS的内容,许多例子通过将它与人类上网时的做法进行比较来解释这个概念.这让我想到,为什么不以这样一种方式构建REST API,以便人类和机器都能轻松使用它?

例如,我有一个小部件的内部模型,这个小部件具有部件号,价格等属性.当一台机器要求一个小部件列表时,我可以返回一个JSON表示.

{
    widgets: [
        {
            id: 1,
            part_number: "FOO123",
            price: 100,
            url: "/widget/1"
        },
        {
            id: 2,
            part_number: "FOO456",
            price: 150,
            url: "/widget/2"
        },
        {
            id: 3,
            part_number: "FOO789",
            price: 200,
            url: "/widget/3"
        },
        ...
    ]
}
Run Code Online (Sandbox Code Playgroud)

当一个人通过他/她的网络浏览器请求相同的列表时,似乎我应该能够采用相同的内部模型并对其应用不同的视图来生成HTML响应.(当然,我会用其他页面元素装饰HTML响应,比如页眉,页脚等)

这是一个明智的设计吗?为什么或者为什么不?有没有受欢迎的网站呢?

我看到的最大缺点是用户没有明显的方法来删除资源.在我的用例中,我不会让用户修改或删除资源,所以这不是一个交易破坏者,但总的来说你怎么处理?

rest hateoas

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