这是我遇到的一个非常奇怪的情况.我有以下简单的Python脚本:
from selenium import webdriver
from selenium.webdriver.firefox.options import Options
options = Options()
options.add_argument("-headless")
browser = webdriver.Firefox(firefox_options=options)
browser.get("https://www.google.com")
print(browser.current_url)
Run Code Online (Sandbox Code Playgroud)
和脚本的包装:
#!/bin/bash
wget https://github.com/mozilla/geckodriver/releases/download/v0.19.1/geckodriver-v0.19.1-linux64.tar.gz
tar -xzvf geckodriver-v0.19.1-linux64.tar.gz
chmod 777 geckodriver
mv geckodriver /usr/bin/
firefox -v
# python3 when ubuntu
python test.py
Run Code Online (Sandbox Code Playgroud)
另外我有两个Dockerfiles:
Dockerfile A(Ubuntu;工作正常):
FROM ubuntu:16.04
RUN apt-get update -y && apt-get install -y python3 \
python3-pip \
firefox \
build-essential \
wget
COPY . /app
WORKDIR /app
RUN pip3 install --upgrade pip
RUN pip3 install -r requirements.txt
ENTRYPOINT ["bash"]
CMD ["test_wrapper.sh"] …Run Code Online (Sandbox Code Playgroud) 我正在尝试构建一个if具有多个条件的语句,而不是太冗长.目前我有:
my $string = "Hamburger";
my @string_as_array = ( $string =~ m/.../g );
my $x=(scalar @string_as_array);
for(my $i=0; $i<$x; $i++) {
if ($string_as_array[$i] eq "Ham" || $string_as_array[$i] eq "bur") {
print "CHEESE";
}
elsif ($string_as_array[$i] eq "ger") {
print "WICH";
}
else {
print $string_as_array[$i];
}
}
print "\n";
Run Code Online (Sandbox Code Playgroud)
理想情况下,if如果有可能,我会在第一个声明中喜欢这样的内容:
my $string = "Hamburger";
my @string_as_array = ( $string =~ m/.../g );
my $x=(scalar @string_as_array);
for(my $i=0; $i<$x; $i++) {
if ($string_as_array[$i] eq "Ham" || "bur") …Run Code Online (Sandbox Code Playgroud)