[Gelöst] HTTPS-Aufruf durch Python Script

sualc1812

Neuer User
Mitglied seit
11 Mai 2007
Beiträge
21
Punkte für Reaktionen
0
Punkte
0
Hallo,

ich versuche auf meiner FB 7390 ein Python Script zum Laufen zu bringen,
das mir automatisch Filme von meinerm Save.TV account herunterladen soll.

Das script funktioniert auf anderer Hardware tadellos.
Nach Installation von Python 2.7 und dem Modul "Mechanize" läuft es nun auch der FB 7390 unter Freetz.
Leider stürzt es aber mit folgender Fehlermeldung ab:
Code:
root@fritz:/var/media/ftp/savetv# python savetv.py
23.12.2013 22:06:51
Traceback (most recent call last):
  File "savetv.py", line 208, in <module>
    downloader.doDownload()
  File "savetv.py", line 184, in doDownload
    svte.initialiseLogin()
  File "savetv.py", line 91, in initialiseLogin
    self.browser.submit()
  File "/usr/lib/python2.7/site-packages/mechanize/_mechanize.py", line 541, in submit
    return self.open(self.click(*args, **kwds))
  File "/usr/lib/python2.7/site-packages/mechanize/_mechanize.py", line 203, in open
    return self._mech_open(url, data, timeout=timeout)
  File "/usr/lib/python2.7/site-packages/mechanize/_mechanize.py", line 230, in _mech_open
    response = UserAgentBase.open(self, request, data)
  File "/usr/lib/python2.7/site-packages/mechanize/_opener.py", line 193, in open
    response = urlopen(self, req, data)
  File "/usr/lib/python2.7/site-packages/mechanize/_urllib2_fork.py", line 349, in _open
    'unknown_open', req)
  File "/usr/lib/python2.7/site-packages/mechanize/_urllib2_fork.py", line 332, in _call_chain
    result = func(*args)
  File "/usr/lib/python2.7/site-packages/mechanize/_urllib2_fork.py", line 1201, in unknown_open
    raise URLError('unknown url type: %s' % type)
urllib2.URLError: <urlopen error unknown url type: https>
Soweit ich das erkennen kann, läßt die FB das Python-Script keine https Verbindung aufbauen.
Ich vermute das verhindert die FB Firewall.

Kann mir jemand sagen, wie ich das zum Laufen bringen könnte ?
 
Zuletzt bearbeitet:
Schade, dass es in diesem Forum zwar viele Leser gibt, aber leider niemanden der Fragen auch beantwortet ... :(

Mittlerweile habe ich mal etwas mehr recherchiert und denke, dass mein Problem wohl eher daher rührt,
dass die als Freetz-Package angebotene Python-Version keine https-Unterstützung enthält.
Leider wird das bei den vielen Python-Zusatzmodulen in der menuconfig nicht angeboten.

Kann mir jemand einen Tip geben, wie ich das trotzdem reinbekomme.
Evtl. kann man es ja nachinstallieren, nachdem Freetz durch make auf den USB-Stick geschrieben wurde.

Ich weiß nur leider nicht, was genau ich da wohin installieren muss.
Please Help :eek:
 
Vllt. wenn du deinen Ausgabetext in Code-Tags gepackt hättest, dann wäre es einfacher gewesen des zu lesen. Kannst ja deinen ersten Beitrag hier nochmal bearbeiten und des nachholen :)
 
Und dann schaue auch mal nach openssl und dem Modul für Python dazu.
 
daher rührt, dass die als Freetz-Package angebotene Python-Version keine https-Unterstützung enthält.
Wie kommst Du denn darauf? Der folgende Code
Code:
import httplib
conn = httplib.HTTPSConnection("www.kernel.org")
conn.request("GET", "/category/about.html")
r1 = conn.getresponse()
print r1.status, r1.reason
funktioniert bei mir einwandfrei und liefert "200 OK" als Antwort.

Edit: ich gehe natürlich davon aus, dass FREETZ_PACKAGE_PYTHON_MOD_SSL bei Dir aktiviert ist.

p.s. An der Firewall liegt es höchstwahrscheinlich auch nicht.

Edit2: habe in r11465 das mechanize-Module hinzugefügt
 
Zuletzt bearbeitet:
@ oliver.ertl
Hab ich gemacht. Sorry, bin nicht so erfahren im Posten von Beiträgen.

@Alle anderen, besonders er13:
Ich hatte bei den Python-Modulen nur nach https gesucht, mit ssl geht es einwandfrei.
Super, daß das mechanize modul jetzt auch drin ist. Da brauche ich es nicht mehr nachträglich reinzustricken.
Ich nehme alles zurück, daß es hier im Forum nur Leser gibt.
Vielen Dank !
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.