将Python2.6转换为与Google应用引擎兼容(多处理)

2024-04-27 03:55:25 发布

您现在位置:Python中文网/ 问答频道 /正文

我用Python编写了一个使用多处理的小脚本。我曾想过在googleappengine上运行它作为cron作业,但不幸的是googleappengine不支持多处理。有人能帮我把这个转换成googleappengine兼容的代码吗?在

from multiprocessing import Pool
import MySQLdb
import urllib;
import urllib2;

def f(email_url):
    url = "http://my-domain.com/cron.php"
    values = { "email" : email_url[0], "url" : email_url[1] }
    data = urllib.urlencode(values)
    req = urllib2.Request(url, data)
    urllib2.urlopen(req)

if __name__ == '__main__':
    p = Pool()
    emails_urls = list()
    conn = MySQLdb.connect(host = "XXX.XXX.XXX.XXX", user = "USERNAME",
                           passwd = "PASSWORD", db = "MY-DATABASE")
    cursor = conn.cursor()
    cursor.execute ("SELECT email, url FROM data")
    rows = cursor.fetchall()
    for row in rows:
        emails_urls.append((row[0], row[1]))
    cursor.close()
    conn.close()

    p.map(f, emails_urls)

Tags: importurldataemailurllib2connurlscursor