Cookies op Tweakers

Tweakers maakt gebruik van cookies, onder andere om de website te analyseren, het gebruiksgemak te vergroten en advertenties te tonen. Door gebruik te maken van deze website, of door op 'Ga verder' te klikken, geef je toestemming voor het gebruik van cookies. Wil je meer informatie over cookies en hoe ze worden gebruikt, bekijk dan ons cookiebeleid.

Meer informatie
Toon posts:

[Python] requests werkt niet

Pagina: 1
Acties:
  • 1.012 views

Acties:
  • 0Henk 'm!

  • DRuw
  • Registratie: november 2009
  • Nu online

DRuw

Bacardi Bat on Ice:)

Topicstarter
Gents ik heb een issue...
Laat ik eerst even zeggen dat ik een enorme NOOB ben vwb programmeren maar ik vind meestal wel wat ik hebben moet en krijg het werkend.... tot deze week.
Ik heb een Pi met Domoitcz draaien en daar wil ik ook mijn Goodwe omvormer van mijn zonnepanelen mee uitlezen en posten naar PVoutput.
Ik heb python 2.7 en 3.4 erop nu en heb ook requests geinstalleerd maar om een of andere reden blijf ik een error krijgen als ik het python script van zonoskar wil draaien (https://github.com/zonoskar/Goodwe2PVoutput)
error is deze:
pi@raspberrypi ~ $ python -m Goodwe2PVoutput
Traceback (most recent call last):
File "/usr/local/lib/python2.7/runpy.py", line 162, in _run_module_as_main
"__main__", fname, loader, pkg_name)
File "/usr/local/lib/python2.7/runpy.py", line 72, in _run_code
exec code in run_globals
File "/home/pi/Goodwe2PVoutput/__main__.py", line 1, in <module>
import readGoodwe
File "Goodwe2PVoutput/readGoodwe.py", line 1, in <module>
import requests
ImportError: No module named requests

ik heb ook requests eruit gehaald en opnieuw geinstalleerd maar niets lijkt te werken...
Wie kan mij van raad voorzien (en nogmaals ben een enorme noob dus beetje in lekentermen/behapbare brokken :X )

Ik ga er overigens van uit dat het script zelf werkt gezien zonoskar het ook werkend heeft maar na een lange communicatie met hem over de pm snapt hij het ook niet meer wat er bij mij kan zijn...

Deze signature is om volstrekt onduidelijke redenen verwijderd. PVOutput


Acties:
  • 0Henk 'm!

  • Solopher
  • Registratie: december 2002
  • Laatst online: 04-12 11:02
Hoe heb je requests geïnstalleerd? Via pip?
Ik heb die module namelijk even getest, en bij lijkt het gewoon te werken.

pip install requests

Acties:
  • 0Henk 'm!

  • DRuw
  • Registratie: november 2009
  • Nu online

DRuw

Bacardi Bat on Ice:)

Topicstarter
jep, op die manier inderdaad, en als ik het nu doe krijg ik dit:

pi@raspberrypi ~ $ sudo pip install requests
Requirement already satisfied (use --upgrade to upgrade): requests in /usr/local /lib/python2.7/dist-packages/requests-2.10.0-py2.7.egg

Deze signature is om volstrekt onduidelijke redenen verwijderd. PVOutput


Acties:
  • 0Henk 'm!

  • Solopher
  • Registratie: december 2002
  • Laatst online: 04-12 11:02
Ik neem aan dat je Raspbian gebruikt? Zou je dit eens willen proberen?

sudo apt-get update
sudo apt-get install python-requests


Sowieso zal ik je willen aanraden om virtualenv te gebruiken, dan heb je namelijk geen systeem wide packages nodig. https://virtualenv.pypa.io/en/stable/

Solopher wijzigde deze reactie 26-06-2016 21:05 (30%)


Acties:
  • 0Henk 'm!

  • DRuw
  • Registratie: november 2009
  • Nu online

DRuw

Bacardi Bat on Ice:)

Topicstarter
wheezy is het volgens mij (standaard van de domoticz sd install)

Gedaan en na een hoop geratel nogmaals geprobeerd.
zelfde error...

Deze signature is om volstrekt onduidelijke redenen verwijderd. PVOutput


Acties:
  • 0Henk 'm!

  • DRuw
  • Registratie: november 2009
  • Nu online

DRuw

Bacardi Bat on Ice:)

Topicstarter
heb virtualenv ook even geinstalleerd:)

Deze signature is om volstrekt onduidelijke redenen verwijderd. PVOutput


Acties:
  • 0Henk 'm!

  • Feanathiel
  • Registratie: juni 2007
  • Niet online

Feanathiel

Cup<Coffee>

/usr/local /lib/python2.7/dist-packages/requests-2.10.0-py2.7.egg

Zit een spatie tussen, is dat bewust?

Acties:
  • 0Henk 'm!

  • Solopher
  • Registratie: december 2002
  • Laatst online: 04-12 11:02
Als je python intypt en vervolgens:

import requests

doet krijg je dan dezelfde fout?

Acties:
  • 0Henk 'm!

  • DRuw
  • Registratie: november 2009
  • Nu online

DRuw

Bacardi Bat on Ice:)

Topicstarter
quote:
Feanathiel schreef op zondag 26 juni 2016 @ 21:16:
/usr/local /lib/python2.7/dist-packages/requests-2.10.0-py2.7.egg

Zit een spatie tussen, is dat bewust?
Nee, in die zin, die stond een regel lager dus die spatie zit er normaal niet;)
quote:
Solopher schreef op zondag 26 juni 2016 @ 21:19:
Als je python intypt en vervolgens:

import requests

doet krijg je dan dezelfde fout?
Yep:

pi@raspberrypi ~ $ python
Python 2.7.9 (default, Jun 21 2016, 18:24:37)
[GCC 4.6.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import requests
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named requests

Deze signature is om volstrekt onduidelijke redenen verwijderd. PVOutput


Acties:
  • 0Henk 'm!

  • Tk55
  • Registratie: april 2009
  • Niet online
Als je virtualenv gebruikt moet je die eerst maken en activeren:
quote:
virtualenv env
. env/bin/activate
dan installeer je daar opnieuw requests, met
quote:
pip install requests

Acties:
  • +1Henk 'm!

  • DRuw
  • Registratie: november 2009
  • Nu online

DRuw

Bacardi Bat on Ice:)

Topicstarter
JAHAAAA
dit lijkt te werken!
althans, ik krijg nu een response 401 dus er lijkt iets te zijn met mijn login bij PVoutput (zie ook dat api nog op disabled staat dus hij probeert het nu weer 10 mins).

Blijft dit nu draaien eigelijk tewijl ik de sessie verbreek en hoe start/stop ik dit eventueel na opnieuw inloggen?
Ik heb bij domoticz bijvoorbeeld Monit draaien maar dat zit bij python vast anders...


EDIT: en na de api op enabled te zetten geeft hij response 200 aan (wat volgens mij positief is want hij laat ook wat zien:)
http://pvoutput.org/list.jsp?userid=51088

DRuw wijzigde deze reactie 26-06-2016 21:40 (17%)

Deze signature is om volstrekt onduidelijke redenen verwijderd. PVOutput


Acties:
  • 0Henk 'm!

  • DRuw
  • Registratie: november 2009
  • Nu online

DRuw

Bacardi Bat on Ice:)

Topicstarter
Juist... als ik nu de sessie van putty verbreek dan stopt hij ook
vervolgens opnieuw inloggen krijg ik weer dezelfde error.????
Hoe kan ik dit draaiende houden?
het werkt dus alleen als die (env) voor mijn prompt staat.....

DRuw wijzigde deze reactie 26-06-2016 22:10 (27%)

Deze signature is om volstrekt onduidelijke redenen verwijderd. PVOutput


Acties:
  • 0Henk 'm!

  • Gtoniser
  • Registratie: januari 2008
  • Laatst online: 27-11 21:37
Dan kun je gebruik maken van GNU screen (https://www.linode.com/do...sistent-terminal-sessions), of zul je het script als een cronjob moeten installen.

Acties:
  • 0Henk 'm!

  • Solopher
  • Registratie: december 2002
  • Laatst online: 04-12 11:02
Ja, dat klopt wel aangezien je momenteel geen service o.i.d. draait.
Waar heb jij je virtualenv aangemaakt?

Dus:
Bash:
1
virtualenv env

uitgevoerd?
Als je naar die directory gaat en je doet:
Bash:
1
source env/bin/activate

Dan kun je je script als het goed is weer uitvoeren.
Via nohub kun je het in de achtergrond draaien:

Zie hier ook een korte uitleg.
http://stackoverflow.com/...kground-and-get-no-output en http://www.cyberciti.biz/...-from-a-shell-prompt.html

Solopher wijzigde deze reactie 26-06-2016 22:18 (8%)


Acties:
  • 0Henk 'm!

  • DRuw
  • Registratie: november 2009
  • Nu online

DRuw

Bacardi Bat on Ice:)

Topicstarter
klopt, na virtualenv env te doen en het commando opnieuw doet hij het weer:)
Ik zal ff kijken hoe ik het op de achtergrond draaiende houd want dit is mijn werklaptop waabij ik inlog via putty.
Er hangt geen scherm etc aan mijn pi welke altijd ingelogd is...
Dank!

Deze signature is om volstrekt onduidelijke redenen verwijderd. PVOutput


Acties:
  • 0Henk 'm!

  • DRuw
  • Registratie: november 2009
  • Nu online

DRuw

Bacardi Bat on Ice:)

Topicstarter
quote:
Ja dat is op de achtergrond maar dit moet gewoon continu blijven draaien en ik moet gewoon op mijn pi kunnen in en uitloggen dus dan werkt het achtergornd principe niet toch....?
die GNU is wel het principe wat ik zoek zo te zien......denkik :+

Deze signature is om volstrekt onduidelijke redenen verwijderd. PVOutput


Acties:
  • 0Henk 'm!

  • Solopher
  • Registratie: december 2002
  • Laatst online: 04-12 11:02
Dan zou je screen kunnen gebruiken zoals @Gtoniser ook al aangaf zie hier voor meer info:
http://superuser.com/ques...ask-jobs-when-closing-ssh

Maar dat kan met nohup ook ;), dan hoef je geen screen te gebruiken. Wat je zelf wil, ik zelf zou tegenwoordig gewoon Docker gebruiken en via docker-compose het script altijd opnieuw op laten starten, maar dit is een beetje overkill voor wat jij er mee wilt doen.

Je zou nog kunnen kijken naar een tool als Supervisor http://supervisord.org/ en https://github.com/Supervisor/initscripts.

Solopher wijzigde deze reactie 26-06-2016 22:25 (52%)


Acties:
  • 0Henk 'm!

  • DRuw
  • Registratie: november 2009
  • Nu online

DRuw

Bacardi Bat on Ice:)

Topicstarter
top, nu heb ik bij domoticz monit die hem in de gaten houd en eventueel herstart als hij uitvalt om een of andere reden (ook na reboot van de pi).
Kan dit ook nog op een of andere manier of gaat dat te ver?

Deze signature is om volstrekt onduidelijke redenen verwijderd. PVOutput


Acties:
  • 0Henk 'm!

  • Solopher
  • Registratie: december 2002
  • Laatst online: 04-12 11:02
Jawel, maar dan zul je van je script een deamon moeten maken.
Dan hoef je ook geen Supervisor te gebruiken:

Zie hier een klein voorbeeldje:
http://stackoverflow.com/...n-debian-using-virtualenv

Acties:
  • 0Henk 'm!

  • DRuw
  • Registratie: november 2009
  • Nu online

DRuw

Bacardi Bat on Ice:)

Topicstarter
Ík heb in ieder geval nu die GNU erop gezet.
Wel handig: met env in gebruik geactiveerd en kan nu in en uitloggen terwijl hij het blijft doen (al stopt hij env zo te zien wel?)
Nouja, voor nu up en running en volgens mij is mijn pi behoorlijk stabiel dus ik kijk even hoe lang dit goed gaat:)

Deze signature is om volstrekt onduidelijke redenen verwijderd. PVOutput


Acties:
  • 0Henk 'm!

  • DRuw
  • Registratie: november 2009
  • Nu online

DRuw

Bacardi Bat on Ice:)

Topicstarter
Hmmm hij heeft nu iedere keer dezelfde waarde geüpload de afgelopen tijd.
Hij upload dus wel maar volgens mij is mijn onvormer uit en blijft hij hangen op de laatste waarde...
Hij zal morgen weer inkicken dan en dan weet ik gelijk of hij werkt:)
Enug idee waarom dit trouwens wel met env werkt en niet normaal??

Deze signature is om volstrekt onduidelijke redenen verwijderd. PVOutput


  • DRuw
  • Registratie: november 2009
  • Nu online

DRuw

Bacardi Bat on Ice:)

Topicstarter
quote:
Solopher schreef op zondag 26 juni 2016 @ 22:15:
Ja, dat klopt wel aangezien je momenteel geen service o.i.d. draait.
Waar heb jij je virtualenv aangemaakt?

Dus:
Bash:
1
virtualenv env

uitgevoerd?
Als je naar die directory gaat en je doet:
Bash:
1
source env/bin/activate

Dan kun je je script als het goed is weer uitvoeren.
Via nohub kun je het in de achtergrond draaien:

Zie hier ook een korte uitleg.
http://stackoverflow.com/...kground-and-get-no-output en http://www.cyberciti.biz/...-from-a-shell-prompt.html
Via GNu is het blijven werken en draait nu ook nog netjes :*)
Enig idee waarom het via env wel werkt en niet "normaal"?

Deze signature is om volstrekt onduidelijke redenen verwijderd. PVOutput


  • Solopher
  • Registratie: december 2002
  • Laatst online: 04-12 11:02
Ik denk omdat je "python" commando gebruik maakt van een andere packages dan je globals, oftewel je hebt er twee. Het kan zijn dat pip ze niet op de goede plek installeert en dat daarom python de packages niet herkend.

Ik heb geen idee hoe je dit kunt oplossen, aangezien ik nooit gebruik maak van Python op deze manier.

Om te kijken wel packages je buiten je virtualenv om hebt geinstalleerd zou je python kunnen uitvoeren en vervolgens:
Python:
1
2
3
4
5
import pip
installed_packages = pip.get_installed_distributions()
installed_packages_list = sorted(["%s==%s" % (i.key, i.version)
     for i in installed_packages])
print(installed_packages_list)

Overigens is het geen GNu maar is Screen een GNU project. Mocht je meer willen weten over GNU Wikipedia: GNU en natuurlijk de homepage van GNU https://www.gnu.org/

  • hesselb
  • Registratie: mei 2009
  • Laatst online: 07-12 14:46
ben ook met dit script bezig, heb het op een raspberry pi geprobeerd en op mijn windows laptop.
krijg het niet werkend
doe waarschijnlijk ergens iets verkeerd.
kan iemand mij op weg helpen, ben een leek op python gebied

  • RobIII
  • Registratie: december 2001
  • Laatst online: 23:50

RobIII

Moderator Devschuur®

^ Romeinse 3 ja!

Oh, run je het ook met noerrors = 1 ?

Even serieus; hoe moeten wij helpen met zo'n 'foutomschrijving'? Je geeft niet eens aan wat er niet werkt.
hesselb schreef op zondag 10 november 2019 @ 13:46:
doe waarschijnlijk ergens iets verkeerd.
Waarschijnlijk wel ja. Maar wat dat dan is is verdomd lastig te zeggen op basis van de informatie die je ons geeft.
hesselb schreef op zondag 10 november 2019 @ 13:46:
kan iemand mij op weg helpen, ben een leek op python gebied
Ja, maar niet op deze manier. Je kicked een topic van 3 jaar oud met een post die niets toevoegt en een vraag waar totaal geen eigen (zichtbare) inzet in aanwezig is. Ik adviseer je dan ook een nieuw topic te openen en daar, per onze quickstart, je probleem uiteen te zetten en aan te geven wat er dan precies niet werkt en wat je zélf al gedaan hebt om 't (te proberen) op te lossen.

RobIII wijzigde deze reactie 10-11-2019 14:25 (4%)

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Roses are red Violets are blue, Unexpected ‘{‘ on line 32.

Over mij

Pagina: 1

Dit topic is gesloten.



Apple iPhone 11 Nintendo Switch Lite LG OLED C9 Google Pixel 4 FIFA 20 Samsung Galaxy S10 Sony PlayStation 5 Elektrische auto

'14 '15 '16 '17 2018

Tweakers vormt samen met Hardware Info, AutoTrack, Gaspedaal.nl, Nationale Vacaturebank, Intermediair en Independer DPG Online Services B.V.
Alle rechten voorbehouden © 1998 - 2019 Hosting door True