检查在python的网页中是否出现两次单词

时间:2012-02-05 20:00:59

标签: python

我正在登录某个网站,然后搜索该网站。从结果我正在搜索HTML,看看我是否得到一个匹配。这一切都完美无缺,除了网站上写着“搜索结果xyz”这个事实,这是我的搜索结果,所以当它可能是负数时我总能得到一个积极的结果。我目前的代码

... Previous code to log in etc...

words = ['xyz']

br.open ('http://www.example.com/browse.php?psec=2&search=%s' % words)
html = br.response().read()

for word in words:
   if word in html:
      print "%s found." % word
   else:
      print "%s not found." % word

作为一种解决方案,我想检查这个单词是否出现两次或更多,如果是,那么它是正面的。如果它只出现一次那么显然只是“搜索结果xyz”被拾取,因此找不到它。我将如何调整当前代码以检查两次出现而不仅仅是一次?

由于

2 个答案:

答案 0 :(得分:3)

你可以试试这个,

for word in words:
    if html.count(word)>1:
        #your logic goes here

实施例

>>> words =['the.cat.and.hat']
>>> html = 'the.cat.and.hat'
>>> for w in words:
...       if html.count(w)>1:
...           print 'more than one match'
...       elif html.count(w) == 1:
...           print 'only one match found'
...       else:
...           print 'no match found'
...
only one match found
>>>

答案 1 :(得分:0)

简而言之,您需要计算字符串中特定单词的出现次数。使用string.count()。请参阅This