'Return matching items by name or label.
For argument docs, see the docstring for .get()'

def get_items(self, name=None, label=None, id=None, exclude_disabled=False):

    if ((name is not None) and (not isstringlike(name))):
        raise TypeError('item    name    must    be    string-like')
    if ((label is not None) and (not isstringlike(label))):
        raise TypeError('item    label    must    be    string-like')
    if ((id is not None) and (not isstringlike(id))):
        raise TypeError('item    id    must    be    string-like')
    items = []
    compat = self._form.backwards_compat
    for o in self.items:
        if (exclude_disabled and o.disabled):
            continue
        if ((name is not None) and (o.name != name)):
            continue
        if (label is not None):
            for l in o.get_labels():
                if ((compat and (l.text == label)) or ((not compat) and (l.text.find(label) > (-1)))):
                    break
            else:
                continue
        if ((id is not None) and (o.id != id)):
            continue
        items.append(o)
    return items
