python memcache搜索字符串

时间:2012-09-26 11:39:58

标签: python linux memcached

任何想法如何在memcache中搜索字符串,我有一个加载到memcache的域名列表

我想做的是在这些域上搜索一个字符串......

[root@server python]# cat memtest.py 
#!/usr/bin/env python
import os
import sys
import memcache
domain = "http://www.yahoo.com/images.txt"
s  =   memcache.Client(["127.0.0.1:11211"])
def addData():
    proc = open("domains.txt","r")
    for i in proc.readlines():
        d = i.rstrip("\n");
        s.set(d,1)

def getData():
    name = s.get("yahoo.com")
    print name
    name = s.get("xaa.com")
    print name
    ##dummy code, just an example
    if domain in s.get(domain):
        print found


def main():
    addData()
    getData()

if __name__ == "__main__":
    main()

2 个答案:

答案 0 :(得分:0)

def addData():
    proc = open("domains.txt","r")
    for i in proc.readlines():
        d = i.rstrip("\n");
        s.set(d,d)


def getData():
    name = s.get("yahoo.com")
    print name
    name = s.get("xaa.com")
    print name
    ##dummy code, just an example
    if s.get("yahoo.com"):
        if domain.find(s.get("yahoo.com")) > 0:
            print found

答案 1 :(得分:0)

要从memcache中检索值,您必须知道存储该值的确切键。

s.get("yahoo.com")

仅在

时才有效
s.set("yahoo.com", <some value>)

之前执行过。

看起来你不知道确切的密钥,因为它们是从文件中检索的。 您可以尝试使用正则表达式从文件中获取基本域,并确保将“yahoo.com”用作密钥。