Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/338.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么我使用twilio的脚本在本地运行得很好,但在Python的任何地方都会抛出错误?_Python_Python 3.x_Twilio_Pythonanywhere - Fatal编程技术网

为什么我使用twilio的脚本在本地运行得很好,但在Python的任何地方都会抛出错误?

为什么我使用twilio的脚本在本地运行得很好,但在Python的任何地方都会抛出错误?,python,python-3.x,twilio,pythonanywhere,Python,Python 3.x,Twilio,Pythonanywhere,我的脚本在本地运行时执行得非常完美,但在Python Anywhere上执行时,会抛出以下错误: Traceback (most recent call last): File "/home/ectobiologist7/desiderius.py", line 68, in <module> asendoff() File "/home/ectobiologist7/desiderius.py", line 64, in asendoff body=bill

我的脚本在本地运行时执行得非常完美,但在Python Anywhere上执行时,会抛出以下错误:

Traceback (most recent call last):
  File "/home/ectobiologist7/desiderius.py", line 68, in <module>
    asendoff()
  File "/home/ectobiologist7/desiderius.py", line 64, in asendoff
    body=billiam,
  File "/usr/local/lib/python3.4/dist-packages/twilio/rest/resources/messages.py", line 122, in create
    return self.create_instance(kwargs)
  File "/usr/local/lib/python3.4/dist-packages/twilio/rest/resources/base.py", line 365, in create_instance
    data=transform_params(body))
  File "/usr/local/lib/python3.4/dist-packages/twilio/rest/resources/base.py", line 200, in request
    resp = make_twilio_request(method, uri, auth=self.auth, **kwargs)
  File "/usr/local/lib/python3.4/dist-packages/twilio/rest/resources/base.py", line 152, in make_twilio_request
    resp = make_request(method, uri, **kwargs)
  File "/usr/local/lib/python3.4/dist-packages/twilio/rest/resources/base.py", line 117, in make_request
    resp, content = http.request(url, method, headers=headers, body=data)
  File "/usr/local/lib/python3.4/dist-packages/httplib2/__init__.py", line 1314, in request
    (response, content) = self._request(conn, authority, uri, request_uri, method, body, headers, redirections, cachekey)
  File "/usr/local/lib/python3.4/dist-packages/httplib2/__init__.py", line 1064, in _request
    (response, content) = self._conn_request(conn, request_uri, method, body, headers)
  File "/usr/local/lib/python3.4/dist-packages/httplib2/__init__.py", line 987, in _conn_request
    conn.connect()
  File "/usr/lib/python3.4/http/client.py", line 1223, in connect
    super().connect()
  File "/usr/lib/python3.4/http/client.py", line 834, in connect
    self.timeout, self.source_address)
  File "/usr/lib/python3.4/socket.py", line 512, in create_connection
    raise err
  File "/usr/lib/python3.4/socket.py", line 503, in create_connection
    sock.connect(sa)
ConnectionRefusedError: [Errno 111] Connection refused

这里是Twilio开发者福音传道者

有人建议PA拥有旧版本的图书馆。几个月前,我们在我们的库和API中做了一个改进,以实施SSL

如果您使用的是最新版本的库,则不会有任何更改。从你发布的错误中,我不能确切地告诉你PA使用的是什么版本的库,但再深入一点,用户似乎可以

我在这里的建议是稍微改变您的方法,也许将其部署到(它是免费的,您将能够使用您想要的确切库版本)。这样,如果您看到它在那里工作,您可以联系PA并检查他们的库版本,您将能够告诉他们是否需要更新


希望这对您有所帮助

有人建议PA拥有旧版本的图书馆。几个月前,我们在我们的库和API中做了一个改进,以实施SSL

如果您使用的是最新版本的库,则不会有任何更改。从你发布的错误中,我不能确切地告诉你PA使用的是什么版本的库,但再深入一点,用户似乎可以

我在这里的建议是稍微改变您的方法,也许将其部署到(它是免费的,您将能够使用您想要的确切库版本)。这样,如果您看到它在那里工作,您可以联系PA并检查他们的库版本,您将能够告诉他们是否需要更新


希望这能帮助您

所有来自Pythonywhere的外部连接,免费帐户被代理以防止滥用

您需要为连接设置代理,如下所示:

from twilio.rest.resources import Connection
from twilio.rest.resources.connection import PROXY_TYPE_HTTP

Connection.set_proxy_info(
    "proxy.server",
    3128,
    proxy_type=PROXY_TYPE_HTTP
)

但是,在Python3中,httplib2(因此)忽略代理设置(请参见的底部),因此尝试与被阻止的Twilio建立直接连接。

来自Pythony的所有外部连接,其中免费帐户被代理以防止滥用

您需要为连接设置代理,如下所示:

from twilio.rest.resources import Connection
from twilio.rest.resources.connection import PROXY_TYPE_HTTP

Connection.set_proxy_info(
    "proxy.server",
    3128,
    proxy_type=PROXY_TYPE_HTTP
)


但是,在Python 3中,httplib2(因此)忽略代理设置(请参见的底部),因此尝试直接连接到被阻止的Twilio。

我怀疑某个地方有防火墙阻止了Pythonywhere。@Twilio一端的Barmar?这将如何修复?无法从这里判断它是哪一端。我怀疑某个地方有防火墙阻止了PythonAnywhere。@Twilio一端的Barmar?这将如何修复?无法从这里判断它是哪一端。PythonyWhere dev在此--您也可以在我们的平台上运行任何版本的Twilio库,使用
pip2.7安装--user--upgrade
或virtualenv。问题是httplib2中的bug,这意味着它忽略了代理设置(免费Pythonywhere帐户所需)——请参阅Glenn对这个问题的回答。实际上,我应该说的是--
请求
显然比
httplib2
更适合构建API。在基于
请求的库中,我们从来没有遇到过任何代理设置问题,特别是当它从标准环境变量中提取代理设置时,而不是要求用户在代码中配置代理设置。它还提供了聪明的连接池功能,因此理论上,如果您的服务器支持它,事情可以运行得更快。对不起,我忘了说PA上的控制台和我的本地脚本都使用了5.4.0,并且这个错误仍然发生。在主要帖子中,指向解决方案代理的链接与我在问题中提到的完全相同,但不起作用。很抱歉Pythonywhere dev here--您也可以在我们的平台上运行任何版本的Twilio库,使用
pip2.7安装--user--upgrade
或virtualenv。问题是httplib2中的bug,这意味着它忽略了代理设置(免费Pythonywhere帐户所需)——请参阅Glenn对这个问题的回答。实际上,我应该说的是--
请求
显然比
httplib2
更适合构建API。在基于
请求的库中,我们从来没有遇到过任何代理设置问题,特别是当它从标准环境变量中提取代理设置时,而不是要求用户在代码中配置代理设置。它还提供了聪明的连接池功能,因此理论上,如果您的服务器支持它,事情可以运行得更快。对不起,我忘了说PA上的控制台和我的本地脚本都使用了5.4.0,并且这个错误仍然发生。在主要帖子中,指向解决方案代理的链接与我在问题中提到的完全相同,但不起作用。很抱歉我已经尝试了代理,但这一个看起来不同,所以我会尝试!我应该把这个放在剧本的什么地方?在你连接到twilioGot之前!对于本书的未来读者,为了澄清这一点,您必须添加代理代码并使用Python 2.7。谢谢你的帮助!我无法导入这些模块我已经尝试了代理,但这一个看起来不同,所以我会尝试!我应该把这个放在剧本的什么地方?在你连接到twilioGot之前!对于本书的未来读者,为了澄清这一点,您必须添加代理代码并使用Python 2.7。谢谢你的帮助!我无法导入这些模块