【发布时间】:2020-04-27 22:10:11
【问题描述】:
我在我的程序中使用 NTPlib,它在我的机器上运行良好,但是当我安排它从 pythonanyhere 运行时,我收到以下错误,File "/home/somasundharam/.local/lib/python2.7/site-packages/ntplib.py", line 306, in request
s.sendto(query_packet.to_data(), sockaddr)
error: [Errno 1] Operation not permitted
我应该怎么做才能避免这种情况?
下面是代码:
我忽略了添加从 Internet 复制的代码的邮件部分,我在 python 2.7 中运行此 pgm,因为代码中使用的 firebase 库有一个术语 async 用作 var 名称,这种情况发生要成为 python 3.7 中的关键字,在我的机器上我将其更改为 smthg else like asyncx 并且效果很好,但我不知道如何在 pythonanywhere 中更改相同的内容
如前所述,我使用pip2.7 命令安装了所有软件包,以便在 python 2.7 上运行它。
#!/usr/bin/python2.7
# coding: utf-8
from firebase import firebase
import ntplib
from time import ctime
import pandas as pd
firebase = firebase.FirebaseApplication("https://@#$%^&.firebaseio.com/" , None)
c = ntplib.NTPClient()
response = c.request('asia.pool.ntp.org', version=3)
date_str = ctime(response.tx_time).split()
filename = date_str[0]+'_'+date_str[1]+'_'+date_str[2]+'_'+date_str[4]+".csv"
recipients = firebase.get("mailing list" , '')
mail_ids = list(recipients.values())
time_stamp = firebase.get("Time stamp" , '')
temp = firebase.get("TEMP SENSOR",'')
gas = firebase.get("GAS SENSOR", '')
humidity = firebase.get("HUMIDITY SENSOR",'')
sendata = [list(time_stamp.values()) ,list(temp.values()) , list(gas.values()) , list(humidity.values())]
sensor = pd.DataFrame(sendata)
sensor = sensor.transpose()
sensor.columns= ["Time Stamp","Temperature(deg C)" , "Gas Sensor(V)" , "Humidity(%)"]
sensor.to_csv(filename , index = False)
谢谢,
【问题讨论】:
-
你能展示代码并告诉你如何运行它吗?
-
也可能同样重要——完整的错误堆栈跟踪是什么?
-
@conrad 这是错误:(抱歉回复晚了)
Traceback (most recent call last): File "/home/somasundharam/firebase_iot_integration.py", line 14, in <module> response = c.request('asia.pool.ntp.org', version=3) File "/home/somasundharam/.local/lib/python2.7/site-packages/ntplib.py", line 306, in request s.sendto(query_packet.to_data(), sockaddr) error: [Errno 1] Operation not permitted
标签: pythonanywhere