Python中的procmailrc和HTTP请求不起作用

2024-04-19 05:32:47 发布

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

我在使用python脚本进行HTTP调用时遇到了一个问题,该脚本是从.procmailrc文件中调用的。你能提出一个解决方法吗?我没有办法了。当从同一个命令行运行时,从同一个命令行运行的命令是正确的。 详情如下:

.procmailrc内容: 默认值=$HOME/Maildir/ MAILDIR=$HOME/MAILDIR PMDIR=$HOME/.procmail LOGFILE=/home/prasad/log.'日期+%y-%m-%d' SHELL=/bin/bash 详细=是

:0
| /usr/bin/python /home/prasad/test.py >>/tmp/py_log.txt

当从命令行运行时,它可以进行网络连接。在

内容测试.py公司名称:

^{pr2}$

它挂在'response=urllib2.urlopen(url,params)'处,并且永远看不到print“after urlopen”调用。在

编辑: 我刚在procmail生成的日志文件中发现权限错误。procmailrc正在非根帐户下运行。如何修复?在

procmail: Executing " /usr/bin/python /home/prasad/test.py  >>/tmp/py_log.txt"
Traceback (most recent call last):
File "/home/prasad/test.py", line 23, in <module>
  response = urllib2.urlopen(url, params)
File "/usr/lib64/python2.6/urllib2.py", line 126, in urlopen
   return _opener.open(url, data, timeout)
File "/usr/lib64/python2.6/urllib2.py", line 391, in open
   response = self._open(req, data)
File "/usr/lib64/python2.6/urllib2.py", line 409, in _open
 '_open', req)
File "/usr/lib64/python2.6/urllib2.py", line 369, in _call_chain
result = func(*args)
File "/usr/lib64/python2.6/urllib2.py", line 1190, in http_open
return self.do_open(httplib.HTTPConnection, req)
File "/usr/lib64/python2.6/urllib2.py", line 1165, in do_open
raise URLError(err)
urllib2.URLError: <urlopen error [Errno 13] Permission denied>

Tags: 命令行inpyhomeusrlineopenurllib2