python - 在共享服务器上导入模块

时间:2011-10-04 08:52:02

标签: python shared imaplib

我有一个名为gmailCleaner.py的脚本,在我的电脑上它运行得很好并且按照我想要的方式调整我的gmail(使用imap)。

所以我想让这个脚本可用于我的网站上的每个人(共享托管,启用python)脚本运行但无法连接到gmail(使用与我的电脑相同的设置,只有差异是在PC上使用raw_input并在服务器上我使用html形式的fata)

我认为这是因为他们缺少我正在使用的imaplib文件 - 所以我将它上传到服务器(与脚本相同的文件夹)它没有用。

new:收到此错误:'module'对象没有属性'IMAP4_SSL'

任何形式的帮助都会很好

代码:

#!/usr/bin/python

import imaplib
import os
import cgi

print 'Content-type: text/html\n\n'

try:
    M=imaplib.IMAP4_SSL('imap.gmail.com', 993)
except:
    print 'cannot connect to gmail<br />'

它失败了:S 它打印'无法连接到gmail'意味着它运行。

编辑评论,但还不是最友好的用户代码,只是希望它首先工作(删除来自pesific发件人的所有电子邮件):

try:    
    USER = form.getvalue('username')
    PASS = form.getvalue('password')
    SENDER = form.getvalue('from')
    print USER
except:
    print 'cannot get form info<br />'

try:
    M=imaplib.IMAP4_SSL('imap.gmail.com', 993)
    M.login(USER +'@gmail.com',PASS)
    status, count = M.select('Inbox')
except Exception as e: print e

try:
    SENDER = '\"' + SENDER + '\"'
    data = M.search(None, 'FROM', SENDER)
    a = str(data[1])
    a = a.split()
    b = ''
    i = 0
    while i < len(a[-1]) - 2:
        b = b + a[-1][i]
        i += 1
    a[-1] = b
    b = ''
    i = 2
    while i < len(a[0]):
        b = b + a[0][i]
        i += 1
    a[0] = b
except:
    print 'cannot get ids<br />'


try:
    print 'deleting!<br />'
    i = 0
    while i < len(a):
        M.store(a[i], '+FLAGS', '\\Deleted')
        i += 1
except:
    print 'cannot delete<br />'

1 个答案:

答案 0 :(得分:0)

如果你的共享服务器支持pip install和virtualenv,试试这个 virtualenv env --no-site-packages
pip install python<version>
pip install otherpythonpackages

这可以解决您的问题。