httplib.BadStatusLine: '' auf Linux, aber nicht auf Mac

8

Dieser Fehler ist jetzt seit ein paar Stunden unter meiner Haut. Ich beschloss, ein separates Projekt zu programmieren, nur um zu sehen, ob ich es replizieren kann und ich kann, aber NUR auf meinem Server. Das funktioniert auf meinem Mac.

  • Mac: OSX El Capitan 10.11.6

  • Server: CentOS 7.2.1511

  • Beide haben PhantomJS-Version: 2.1.1

  • Python Mac: Python 2.7.11

  • Python-Server: 2.7.5

  • Beide haben Selenium Version: 2.53.0

Identischer Code lief auf beiden:

%Vor%

Mac-Ausgabe:

%Vor%

Serverausgabe:

%Vor%

Serverausgabe nach Entfernen der Bildschirmzeile:

%Vor%

Eine verwandte Antwort, die ich gefunden habe, war hier: Kann PhantomJS nicht in Python ausführen über Selenium

Also habe ich Selenium 2.37 installiert und es gab denselben Fehler.

Ich lese diese Antwort Das Problem, das möglicherweise im Zusammenhang mit dem Ändern der Header steht, habe ich entfernt, indem ich den Treiber in driver = webdriver.PhantomJS() ändere und immer noch denselben Fehler erhalte.

Ich habe auch 2.7.12 auf dem Server installiert, um zu sehen, ob es einen Unterschied gibt. Die Ausgabe war:

%Vor%

Überprüfung des Speicherplatzes auf dem System. Es ist eine brandneue VPS, aber immer noch, um zu bestätigen:

    
User 25.11.2016, 07:26
quelle

1 Antwort

2

EDIT 3

Fügen Sie Folgendes hinzu:

%Vor%

BEARBEITEN 2

Python WebDriver und phantomJs haben ein Problem mit keep_alive . Dies könnte dein Problem sein. Fügen Sie keep_alive = False wie folgt hinzu:

%Vor%

Ende bearbeiten

Fügen Sie Folgendes hinzu:

%Vor%

Rufen Sie get_status (driver) kurz vor der save_screenshot-Anweisung auf und drucken Sie das Ergebnis aus. Dies sagt uns, ob der Treiber vorzeitig heruntergefahren wurde.

BEARBEITEN

Fügen Sie Folgendes nach driver = webdriver.PhantomJS (sined_capabilities = dcap)

hinzu %Vor%     
MikeJRamsey56 01.12.2016 19:33
quelle