投稿

8月, 2015の投稿を表示しています

VirtualBox上のWindows8をWindows10にアップグレードする

Windows 10 へのアップデートを行うには、ステータスバーに出てきたWindowsアップデートアイコンをクリックすれば良い。 しかし、Virtual Box上のWindows8.1の場合、Virtual Boxの仮想ビデオドライバ (Virtual Box graphics adapter for windows 8)がWindows10と互換性がない旨のメッセージが出て、アップデート出来ない。 回避方法だが、 virtualbox.org • View topic - Cannot force update to Windows 10 from Windows 7 Pro (Guest) ここにあるように、 Microsoft公式ページから  Windows 10 ISO  をダウンロードする。 エディションは、Windows 10 の 64bit にした。 Virtual Boxの仮想マシンの設定を変更。 一般→基本→タイプを Windows 10にする。 システム→マザーボード→起動順序、ハードディスクを1番目に変更。 Windowsを起動する。 起動中にISOをマウントし、Windows内からアップデートをかける。 で、できた。 ちなみに、クリーンインストールに近いことをしたければ、アプリも個人ファイルも引き継がねば良い。 (なお、インストール後にPCの初期化を行うと、うまく行かなかったので、インストール前にスナップショットをとっておくと良いかもしれない。)

Selenium + PhantomJS を使う

ウェブインタフェイスの動作試験など、ある種の用途には、 単に  Requests  のようなHTTPで通信をしてダウンロードするだけのライブラリではなく、 画面も描写し、Java Scriptも実行できる、そういう「本物のブラウザ」をまるごと外から制御できる仕組みが必要となる。 Selenium  は、要するにそういう『スクリプトからまるごと自動制御できるブラウザ』を実現するためにライブラリとなる。 具体的には、以下のようなことが出来る。 指定したURLを開く フォームに記入をする(キーストロークを送る) ボタンなどをクリックする 要素のテキストを取得する 外からJava Scriptを挿入して実行させる スクリーンショットをとる クッキーを取得する・挿入する Seleniumから制御できるブラウザは、Google Chrome, Firefox, Opera, Internet Explorer といったメジャーなブラウザもあるが、 こういったブラウザを用いる場合、Selenium実行中に裏でブラウザの画面も開くため、重かったり、取り回しが面倒だったりする。 こういうために出てきたのが、PhantomJS となる。 PhantomJS は、要するに「画面なしのSafari」みたいなもので、Selenium からとても取り扱いやすい。 install 以下は、Mac + Python 向けにインストールする手順となる。 pip install selenium brew install phantomjs pip install phantomjs 試してみる import selenium import selenium.webdriver import os driver = selenium.webdriver.PhantomJS() driver.set_window_size(1440, 800) # 画面のサイズを指定する。横幅がスクリーンショットに関係する。 driver.get("http://www.google.co.jp/") # Google を開く driver.save_screenshot(os.path.expanduser("