Запуск E-утилит под виртуальной машиной: LWP :: Protocol :: https проблема - PullRequest
0 голосов
/ 22 февраля 2019

Я нахожусь под виртуальной машиной Ubuntu 16.04, размещенной на другой Ubuntu 16.04 (пытаюсь создать чистую и переносимую среду).

Я установил EDirect из E-utilities таким образом , как:

cd ~
/bin/bash
perl -MNet::FTP -e \
  '$ftp = new Net::FTP("ftp.ncbi.nlm.nih.gov", Passive => 1);
   $ftp->login; $ftp->binary;
   $ftp->get("/entrez/entrezdirect/edirect.tar.gz");'
gunzip -c edirect.tar.gz | tar xf -
rm edirect.tar.gz
  builtin exit
export PATH=${PATH}:$HOME/edirect >& /dev/null || setenv PATH "${PATH}:$HOME/edirect"
./edirect/setup.sh

Я запускаю один из инструментов:

/home/ldar/edirect/esearch -db nucleotide -query "txid590 [Organism]"

И я получил эту проблему:

501 Protocol scheme 'https' is not supported (LWP::Protocol::https not installed)
No do_post output returned from 'https://eutils.ncbi.nlm.nih.gov/entrez/eutils/esearch.fcgi?db=nucleotide&term=txid590%20%5BOrganism%5D&retmax=0&usehistory=y&edirect_os=linux&edirect=10.9&tool=edirect&email=ldar@ldar-VirtualBox'
Result of do_post http request is
$VAR1 = bless( {
                 '_msg' => 'Protocol scheme \'https\' is not supported (LWP::Protocol::https not installed)',
                 '_request' => bless( {
                                        '_uri' => bless( do{\(my $o = 'https://eutils.ncbi.nlm.nih.gov/entrez/eutils/esearch.fcgi')}, 'URI::https' ),
                                        '_content' => 'db=nucleotide&term=txid590%20%5BOrganism%5D&retmax=0&usehistory=y&edirect_os=linux&edirect=10.9&tool=edirect&email=ldar@ldar-VirtualBox',
                                        '_headers' => bless( {
                                                               'user-agent' => 'libwww-perl/6.36',
                                                               'content-type' => 'application/x-www-form-urlencoded'
                                                             }, 'HTTP::Headers' ),
                                        '_method' => 'POST'
                                      }, 'HTTP::Request' ),
                 '_content' => 'LWP will support https URLs if the LWP::Protocol::https module
is installed.
',
                 '_headers' => bless( {
                                        'content-type' => 'text/plain',
                                        'client-date' => 'Fri, 22 Feb 2019 09:24:31 GMT',
                                        '::std_case' => {
                                                          'client-warning' => 'Client-Warning',
                                                          'client-date' => 'Client-Date'
                                                        },
                                        'client-warning' => 'Internal response'
                                      }, 'HTTP::Headers' ),
                 '_rc' => 501
               }, 'HTTP::Response' );

WebEnv value not found in search output - WebEnv1 

Я проверилчерез Интернет для этого кода ошибки LWP::Protocol::https not installed.Итак, я сделал:

cpanm install LWP::Protocol::https

cpan -l | grep "LWP::Protocol::https"
Loading internal null logger. Install Log::Log4perl for logging messages
LWP::Protocol::https    6.07

perl --version

This is perl 5, version 26, subversion 2 (v5.26.2) built for x86_64-linux-thread-multi

Я также пытаюсь установить с conda, но та же проблема ...

Если я запускаю установку вне моей виртуальной машины (так, под моим хостом)У меня нет проблемы.Спасибо

...