ITの隊長のブログ

ITの隊長のブログです。Rubyを使って仕事しています。最近も色々やっているお(^ω^ = ^ω^)

Selenium

Seleniumを使って、dl > dt, ddのフォーマットでddが複数あるときのスクレイピング

こういうやつ <dl> <dt></dt> <dd></dd> <dd></dd> <dt></dt> <dd></dd> </dl> dtとddで1対1かしらとか思ってたけど、そうじゃなかったねめんどくさい。 というわけでゴリ押してみた def add_values(values, _values): if len(_values) > 0: values.append(_values) def get_data(driver): ds = driver.find_element…

【VBA】VBA初心者がVBAからSeleniumを使ってみる

IT業界6年目で初めてのVBA。 ほんとは初めてじゃないんだけど、100%初めてに近いです。5行ぐらい書いて実行して妥協した経験を持っています(`・ω・)=3 とまぁ、ほとんどLinux関連のOSしか触っていない&業務PCはMacな私が突然VBAな理由として。会社の…

PHPUnitでSeleniumを使ったテストしているんだけど、flashMessageなんかの要素が存在しない場合はどうすればいいの?ってメモ

JavaにはfindElementってのがあるらしいけど、PHPではそれらしいやつが見つからない。 PHPUnit_Extensions_Selenium2TestCaseってクラスを継承しているんだけど、こいつのドキュメント読みづらくていまいちわからない。じっと見ているけどやっぱりわからない…

【Selenium and PHPUnit】指定したい箇所が複数のClassが振られているなら、$this->byXPath()でも複数してしなければいけない

結論はタイトルで述べた。 <table class="a-class b-class"> <tr> <td><a href="#">テストリンク</a></td> </tr> </table> byXPath('//table[@class="a-class b-class"]/tr[1]/td[1]/a')->click(); なんかしらないけど、クラスa-classだけ指定したらうまくいかなかった。 これが正しい動作か書き方なのかまったくもってわからないけど、…

PHPUnit + SeleniumでPopup Windowを処理する方法

ポップアップウィンドウでSeleniumが止まる!ってか処理が記載されていませんでした。 下記コードを追加したら動いたお acceptAlert(); これでよし。 また、キャンセルはこれでいける(かも。未検証) dismissAlert(); ソースのコメントを読んだだけなので。