3
ChromeDriver siteによると、ユーザーはクロムで作成/表示されたエミュレーターを使用してSeleniumを実行できます。Chromeからエミュレーターリストを取得
私はChrome
から利用可能なすべての作成/エミュレータを表示したかったです。 Chrome
は、いくつかのJSONファイルまたはsomething.Ifで詳細がJava
ChromeDriver siteによると、ユーザーはクロムで作成/表示されたエミュレーターを使用してSeleniumを実行できます。Chromeからエミュレーターリストを取得
私はChrome
から利用可能なすべての作成/エミュレータを表示したかったです。 Chrome
は、いくつかのJSONファイルまたはsomething.Ifで詳細がJava
でそれにアクセスし、それを印刷するので、どのようにすることを保存することができメモ帳++Find in Files
を行なったし、それを見つけました。
データは
キーの下にCファイルにJSON形式で保存されている:\ユーザーは、ユーザー名を\ \のAppData \ローカル\ Googleの\クローム\ユーザーデータ\デフォルト\環境
デベロッパーツール>設定> standardEmulatedDeviceList
JSONを解析するためにジャクソンを使用しました。
import com.fasterxml.jackson.databind.ObjectMapper;
import java.io.File;
import java.io.IOException;
import java.util.List;
import java.util.Map;
import java.util.logging.Level;
import java.util.logging.Logger;
public class Test {
public static void main(String[] args) {
try {
ObjectMapper mapper = new ObjectMapper();
Map map = mapper.readValue(
new File("C:\\Users\\<UserName>\\AppData\\Local\\Google\\Chrome\\User Data\\Default\\Preferences"),
Map.class);
Map devTools = (Map) map.get("devtools");
Map preferences = (Map) devTools.get("preferences");
String standardEmulatedDeviceList = (String) preferences.get("standardEmulatedDeviceList");
List emulatorMap = mapper.readValue(standardEmulatedDeviceList, List.class);
System.out.println(emulatorMap.size());
for (Object object : emulatorMap) {
Map device = (Map) object;
System.out.println(device.get("title"));
}
} catch (IOException ex) {
Logger.getLogger(Test.class.getName()).log(Level.SEVERE, null, ex);
}
}
}
@yeppe from api。クロムがインストールされているローカルマシンから – Madhan
https://developer.chrome.com/multidevice/user-agent ...これを確認してください。ブラウザのユーザーエージェント文字列(UA)は、使用されているブラウザ、バージョン、およびどのオペレーティングシステム上にあるか。機能検出APIが利用できない場合は、UAを使用して動作やコンテンツを特定のブラウザのバージョンにカスタマイズします。 – yeppe
はい、私はそれを得ました、私は今のところそれを使用しています。しかし、私はそれを望んでいない、私はエミュレータのリストを取得したい – Madhan