Может кто-нибудь объяснить эту ошибку при использовании ntplib в pythonanywhere? - PullRequest
0 голосов
/ 28 апреля 2020

Я использую 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

что я должен сделать, чтобы избежать это?

Ниже приведен код:

Я проигнорировал добавление почтовой части кода, так как она была скопирована из inte rnet, я запускаю этот pgm в python 2.7, потому что * Библиотека 1008 *, используемая в коде, имеет термин async, используемый в качестве имени переменной, который является ключевым словом в python 3.7, на моей машине я изменил его на smthg, например 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)

спасибо,

1 Ответ

0 голосов
/ 07 мая 2020

Это потому, что бесплатные пользователи PythonAnywhere ограничены белым списком сайтов HTTP / HTTPS: https://www.pythonanywhere.com/whitelist/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...