'Plugin entry point, search for meta tags.
:param request: The HTTP request object.
:param response: The HTTP response object
:return: None'

def grep(self, request, response):

    if ((not response.is_text_or_html()) or is_404(response)):
        return
    try:
        dp = parser_cache.dpc.get_document_parser_for(response)
    except BaseFrameworkException:
        return
    meta_tag_list = dp.get_meta_tags()
    for tag in meta_tag_list:
        for (attr_name, attr_value) in tag.items():
            if ((not attr_name) or (not attr_value)):
                continue
            for word in self.INTERESTING_WORDS:
                if (word in attr_name):
                    where = ATTR_NAME
                    content = attr_name
                elif (word in attr_value):
                    where = ATTR_VALUE
                    content = attr_value
                else:
                    continue
                desc = 'The    URI:    "%s"    sent    a    <meta>    tag    with    the    attribute    %s    set    to    "%s"    which    looks    interesting.'
                desc %= (response.get_uri(), where, content)
                tag_name = self._find_tag_name(tag)
                usage = self.INTERESTING_WORDS.get(tag_name, None)
                if (usage is not None):
                    desc += ('    The    tag    is    used    for    %s.' % usage)
                i = Info('Interesting    META    tag', desc, response.id, self.get_name())
                i.set_uri(response.get_uri())
                i.add_to_highlight(where, content)
                i[CONTENT] = content
                i[WHERE] = where
                self.kb_append_uniq_group(self, 'meta_tags', i, group_klass=MetaTagsInfoSet)
