在HTML页面快速算法中查找单词

时间:2015-08-07 15:26:41

标签: python html search python-requests word

我需要做一个布尔函数,如果一个单词在HTML页面的文本中,则返回true,如果不是,则返回false。

我知道在查找带有lxml库的单词之前,分析所有页面树很容易,但我发现迭代所有html块并查找单词是否存在效率低下。

对更快算法的任何建议(我需要多次进行此搜索)?

2 个答案:

答案 0 :(得分:3)

只要您不担心在元素属性或其他内容中意外找到单词(如果您对此感到担心,使用类似lxml的内容解析HTML是您唯一的选择),您可以只需将整个HTML文档视为一个大字符串,然后在其中搜索您的单词:

def checkForWord():
    r = requests.get("http://example.com/somepage.html")
    return "myWord" in r.text

答案 1 :(得分:0)

我将整个页面作为字符串:

var markup = document.documentElement.innerHTML;

然后,我使用一种方法在字符串中搜索字符串:

var n = markup.search("YourString");

您将获得匹配索引的数字,如果找不到匹配项,则为-1。