docs: def html_parser(self, scode, *args):
          """
          args[0] = cssselector
  
          args[1] = text / html / xml / @attribute_name
          """
          allow_method = ('text', 'html', 'xml')
          css_path, method = args
          assert method in allow_method or method.startswith(
              '@'), 'method allow: %s or @attr' % allow_method
          result = self.ensure_list(
              self._fromstring(scode,
                               parser=self._html_parser).cssselect(css_path))
          if method.startswith('@'):
              result = [item.get(method[1:]) for item in result]
          else:
              result = [
                  self._tostring(
                      item, method=method, with_tail=0, encoding='unicode')
                  for item in result
              ]
          return result