selenium
教學環境架設由於資管系上電腦重開機會被還原,因此開發環境都無法保存下來。主機Windows 10系統有安裝vscode和virtualbox,因此將開發環境及程式碼都被在虛擬機中,並且在上課時將虛擬機導入至virtualbox,再使用vscode的remote-ssh連入虛擬機操作。
使用ubuntu 22.04桌面版製作,使用2CPU、4GB的記憶體及50GB的硬碟,網路卡使用NAT主機模式,只能和宿主機互通,虛擬機之間不互通。帳號密碼皆為must
,IP為10.0.2.15
(此為VirtualBox的NAT主機連接預設值)。
注意:此次VirtualBox主程式為配合學校主機,使用舊版6.1。
安裝基本套件
opensh-server
python3-pip
安裝chrome
使用firefox瀏覽器至網頁下載chrome瀏覽器並安裝。安裝完之後,輸入google-chrome --version
查看chrome瀏覽器版本。(目前大版本看起來是113)
補充
如果是server版的ubuntu,如用vagrant
產生的,不要直接指定chromedriver
,而是直接用apt
安裝,使用sudo apt install chromium-chromedriver
之後,就可以正常使用
安裝chromedriver
先下載,並且解壓縮之後,稍後複製到/home/must/workspace/selenium/
目錄下。目前看起來大版本應該是113。下面是下載及解壓縮:
cd ~
wget https://chromedriver.storage.googleapis.com/113.0.5672.63/chromedriver_linux64.zip
unzip chromedriver_linux64.zip
python
環境
cd ~
mkdir workspace
cd workspace
mkdir selenium
cd selenium
pip install --upgrade pipenv
pipenv install requests
pipenv install selenium
pipenv install Pillow
pipenv install matplotlib
pipenv install numpy
pipenv install opencv-python
pipenv install lxml
mv ~/chromedriver .
在VirtualBox的主介面中,在選擇該VM的狀態時按設定
「網路」->「介面卡1」->「NAT」->「進階」->「連接埠轉送」。
新增一筆規則,並分別填入ssh
、TCP
, 127.0.0.1
, 5678
, 10.0.2.15
, 22
。之後按「確定」
Jupyter
擴充套件必須在教室本機先安裝Jupyter套件如下
在遠端也要裝,這樣才能選擇虛擬環境的核心
remote-ssh
擴充套件必須安裝此擴充套件,左下角才會出現可連接遠端主機的符號
按此連接至遠端主機
開啟遠端主機連線
選擇「Connect to host」
輸入must@127.0.0.1:5678
此時會出現另一視窗,並且輸入密碼must
。
下面出現SSH和IP字樣時表示連線成功
開啟資料夾
選擇/home/must/workspace/selenium
,再按下「確定」按鈕。需要再輸入一次密碼must
。
ova
可供學生使用及匯入確定系統是關機狀態
右鍵選擇「匯出到OCI」
套用如下圖的設定,並選擇「下一步」
選擇「匯出」
開始匯出
匯入
選擇must.ova
,下一步即可
ssh
至虛擬機must
must
虛擬機。ssh must@127.0.0.1 -p 5678
scrapy
部分scrapy
ssh
進入系統cd workspace/selenium
pipenv shell
scrapy
:pip install scrapy
scrapy
是否安裝成功scrapy bench
如果出現下面畫面就是成功了
如果出現SSL的問題
需要重新安裝一些套件
https://stackoverflow.com/questions/73859249/attributeerror-module-openssl-ssl-has-no-attribute-sslv3-method
docker
sudo apt install curl
sudo apt install tmux
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
sudo usermod -aG docker $USER
先exit
退出再進入系統。
如果出現下面畫面就是成功了。