2016-04-19 2 views
0

私は現在ghost.pyを使用しています。私はそれを呼び出しても即座に閉じることができますが、show()関数を持っています。それを開いたままにするには?Ghost.Pyが表示されたままにする

from ghost import Ghost 
import PySide 

ghost = Ghost() 

with ghost.start() as session: 
    page, resources = session.open("https://www.instagram.com/accounts/login/?force_classic_login") 
    session.set_field_value("input[name=username]", "joe") 
    session.set_field_value("input[name=password]", "test") 
    session.show() 
    session.evaluate("alert('test')") 

答えて

0

セッションプレビューはsession終了するまで開いたままになります - session.exit()が暗黙的に呼び出されたセッションコンテキストを残すことによって。これを開いたままにするには、セッションコンテキストを終了しないか、セッションコンテキストを使用しないようにする必要があります。

前者ように達成することができる。

from ghost import Ghost 
import PySide 

ghost = Ghost() 

with ghost.start() as session: 
    page, resources = session.open("https://www.instagram.com/accounts/login/?force_classic_login") 
    session.set_field_value("input[name=username]", "joe") 
    session.set_field_value("input[name=password]", "test") 
    session.show() 
    session.evaluate("alert('test')") 

    # other python code 

後者ように達成することができる:Pythonの処理が終了すると

from ghost import Ghost 
import PySide 

ghost = Ghost() 

session = ghost.start() 
page, resources = session.open("https://www.instagram.com/accounts/login/?force_classic_login") 
session.set_field_value("input[name=username]", "joe") 
session.set_field_value("input[name=password]", "test") 
session.show() 
session.evaluate("alert('test')") 

# other python code 

セッション意志が不可避出口。また、最初のhttp要求が完了するとすぐにいくつかの操作が返されることにも注意してください。他のリソースがロードされるまで待つ場合は、session.wait_for_page_loaded()に電話する必要があります。私はまた、フォーム提出の一部がsession.sleep()への呼び出しを必要とすることを期待していることが判明しました。

関連する問題