月曜日, 11月 07, 2022

GithubからダウンロードしたWindows Terminalのインストーラーがエラーで失敗した場合(Windows 10 Pro 21H1)

https://github.com/microsoft/terminal/releases/

から最新安定板のインストーラー(Microsoft.WindowsTerminal_Win10_1.15.2874.0_8wekyb3d8bbwe.msixbundle)をダウンロードし、起動してインストールを開始すると

Windows ターミナルのインストールに失敗しました。

アプリ インストーラーで、パッケージの依存関係をインストールできませんでした。開発元に  パッケージを要求してください。 

と表示され、インストールに失敗した。

https://xn--learn-r83d.microsoft.com/en-us/troubleshoot/developer/visualstudio/cpp/libraries/c-runtime-packages-desktop-bridge#how-to-install-and-update-desktop-framework-packages

から Microsoft.VCLibs.x64.14.00.Desktop.appx をダウンロードしてインストール後、再度実行すると、正しくインストールされた。

木曜日, 3月 24, 2022

Selenium から Headless Chrome on Ubuntu 20.04 のサンプル (Perl の Selenium::Remote::Driver)

IDとパスワードでログインし、ログイン後の画面のスクリーンショットを撮るPerlのサンプルソース。 
Selenium::Remote::Driver は、ユーザhogehogeがcpanmでインストールした前提。

----- ここから -----
#!/usr/bin/env perl

use strict;
use warnings;
use lib '/home/hogehoge/perl5/lib/perl5';
use Selenium::Chrome;

my $logon_url = 'https://www.hogehoge.com/';
my $user_id = 'foobar';
my $password  = 'password';
my $png_path = 'sample.png';

my $driver = Selenium::Chrome->new(
  extra_capabilities => {
    'goog:chromeOptions' => {
      args => ['headless', 'disable-gpu', 'window-size=1920,1080', 'no-sandbox' ]
    }
  }
);

$driver->get($logon_url);

$driver->find_element_by_name('user_id')->send_keys($user_id);
sleep 1;

$driver->find_element_by_name('password')->send_keys($password);
sleep 1;

$driver->find_element("//input[\@type='submit']")->click();
sleep 5;

$driver->capture_screenshot("$png_path");

$driver->quit();

exit;
----- ここまで -----

以上。

Ubuntu 20.04 でPerl用モジュール Selenium::Remote::Driver をインストール

まず、Google Chrome と  Selenium 用chromedriver、IPA日本語フォントをインストール。
つぎに、cpanm を使えるようにするインストール。
そして、Selenium::Remote::Driver のdebパッケージはないので、cpanmでインストール。
最後に .bashrc にパスを追記。

$ sudo sh -c 'echo "deb http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google-chrome.list'
$ sudo apt -y install wget gnupg
$ sudo wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo apt-key add -
$ sudo apt update
$ sudo apt -y install google-chrome-stable chromium-chromedriver fonts-ipafont
$ fc-cache -fv
$
$ sudo apt -y install gcc make cpanminus
$ cpanm Selenium::Remote::Driver
$
$ vi .bashrc
 (以下を追記)
export PERL_CPANM_OPT="--local-lib=~/perl5"
export PATH=$HOME/perl5/bin:$PATH;
export PERL5LIB=$HOME/perl5/lib/perl5:$PERL5LIB;
$
$ source .bashrc

以上。