我在做一个python爬虫,使用了selenium库和phantomjs浏览器。我在一个网页中触发了一个click事件打开了一个新的网页,然后我用browser.page_source得到的却是原来那个网页非新打开网页的源码,请问我该如何取得新打开页面的源码呢?
黄舟2017-04-18 10:23:55
リンクが新しいタブを開いた場合でも、ドライバーはデフォルトで現在のウィンドウを使用します。
そのページに切り替えた後、ソースコードを取得します。あるいは、「ウィンドウ ハンドル」を「switch_to_window()」メソッドに渡すこともでき、次のように、開いているすべてのウィンドウを反復処理することができます。 リーリー
たとえば、ブラウザに複数のタブがある場合、window_handles はこれらのタブに対応するインスタンス オブジェクトを保存します。そのため、現在開いている Web ページが 1 つだけの場合、新しく開かれたページは window_handles[1 ] になります。
天蓬老师2017-04-18 10:23:55
現在のウィンドウで開かれている場合は、新しいページがまだ読み込まれていない可能性があり、それまでに新しいページの URL とデータを取得できない可能性があります。ここで wait を使用し、いくつかの条件を設定して確実に取得することができます。続行する前に新しいページが読み込まれます。コードは次のとおりです:
リーリー