selenium+chromedriver在服務器運行的詳細教程_服務器其它

來源:腳本之家  責任編輯:小易  

1、首先你得安裝chrome driver2、然后在你的代碼中先導入webdriver:from selenium import webdriver3、在代碼中添加driver=webdriver.Chrome(),這樣既可以打開chrome4、語句driver.get('url'),可以在chrome中打開url對應的網址www.13333515.buzz防采集請勿采集本網。

1.前言

你好相對來說360安全瀏覽器好用,建議用360安全瀏覽器就可以了。

想使用selenium從網站上抓數據,但有時候使用phantomjs會出錯。chrome現在也有無界面運行模式了,以后就可以不用phantomjs了。

from selenium import webdriver driver=webdriver.Chrome() driver.get('https://www.baidu.com')

但在服務器安裝chrome時出現了一些錯誤,這里總結一下整個安裝過程

鼠標停在紅叉上面看提示什么,導的包能正常使用嗎,可以的話只是顯示的問題的話,吧項目maven刷新一下或者clean一下,也可能是selenium的這個包的問題,更新成最新的包可以試一下

2.ubuntu上安裝chrome

有可能是chrome瀏覽器自動升級了,和chromedriver的版本對應不上了 chromedriver和chrome瀏覽器是有版本對應關系的(直接雙擊chromedriver.exe可以看到版本號),根據下表去搜索對應版本的

# Install Google Chrome# https://askubuntu.com/questions/79280/how-to-install-chrome-browser-properly-via-command-linesudo apt-get install libxss1 libappindicator1 libindicator7wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.debsudo dpkg -i google-chrome*.deb # Might show "errors", fixed by next linesudo apt-get install -f

下載最新的chrome driver,然后放到一個目錄下,再手動置頂chrome driver位置進行調用 java代碼如下 System.setProperty(\"webdriver.chrome.driver\",\"D:\\\\software\\\\chromedriver_win32\\\\

這時應該已經安裝好了,用下邊的命行運行測試一下:

google-chrome --headless --remote-debugging-port=9222 https://chromium.org --disable-gpu

這里是使用headless模式進行遠程調試,ubuntu上大多沒有gpu,所以–disable-gpu以免報錯。

之后可以再打開一個ssh連接到服務器,使用命令行訪問服務器的本地的9222端口:

curl http://localhost:9222

如果安裝好了,會看到調試信息。但我這里會報一個錯誤,下邊是錯誤的解決辦法。

1)可能的錯誤解決方法

運行完上邊的命令可能會報一個不能在root下運行chrome的錯誤。這個時候使用下邊方設置一下chrome

1.找到google-chrome文件

我的位置位于/opt/google/chrome/

2.用vi打開google-chrome文件

vi /opt/google/chrome/google-chrome

在文件中找到

exec -a "$0" "$HERE/chrome" "[email protected]"

3.在后面添加 –user-data-dir –no-sandbox即可,整條shell命令就是

exec -a "$0" "$HERE/chrome" "[email protected]" --user-data-dir --no-sandbox

4.再重新打開google-chrome即可正常訪問!

3.安裝chrome驅動chromedriver

下載chromedriver

chromedriver提供了操作chrome的api,是selenium控制chrome的橋梁。

chromedriver最好安裝最新版的,記的我一開始安裝的不是最新版的,會報一個錯。用最新版的chromedriver就沒有問題,最新版的可以在下邊地址找到

https://sites.google.com/a/chromium.org/chromedriver/downloads

我寫這個文章時最新版是2.37

wget https://chromedriver.storage.googleapis.com/2.37/chromedriver_linux64.zip

unzip chromedriver_linux64.zip

到這里服務器端的無界面版chrome就安裝好了。

4.無界面版chrome使用方法

from selenium import webdriverchrome_options = webdriver.ChromeOptions()chrome_options.add_argument('--headless')chrome_options.add_argument('--disable-gpu')chrome_options.add_argument("user-agent='Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.94 Safari/537.36'")wd = webdriver.Chrome(chrome_options=chrome_options,executable_path='/home/chrome/chromedriver')wd.get("https://www.163.com")content = wd.page_source.encode('utf-8')print contentwd.quit()

這里chrome_options中的第三項設置參數,使用這個設置可以避免網站檢測到你使用的是無界模式進行反抓取。

下邊另外的兩項設置,不進行設置時在桌面版linux系統,或者mac系統上會打開有界面的chrome.調試時可以注釋掉下邊兩行使用有界面版chrome來調試程序。

chrome_options.add_argument('--headless')chrome_options.add_argument('--disable-gpu')

5.參考

https://jiayi.space/post/zai-ubuntufu-wu-qi-shang-shi-yong-chrome-headless

https://blog.csdn.net/u013703963/article/details/71083802

總結

到此這篇關于selenium+chromedriver在服務器運行的文章就介紹到這了,更多相關selenium+chromedriver在服務器運行內容請搜索真格學網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持真格學網!

from selenium import webdriverimport osdef openBrowser():#chromedriver需要你自行下載,這里需要給出你放置該driver的路徑 chromedriver="C:\\Users\\Sigma\\AppData\\Local\\Google\\Chrome\\Application\\chromedriver.exe"if not os.path.exists(chromedriver):chromedriver='C:\\Program Files\\Google\\Chrome\\Application\\chromedriver.exe' os.environ["webdriver.chrome.driver"]=chromedriver browser=webdriver.Chrome(chromedriver)#fireFox不需要driver,只要安裝了firefox,selenium會自動去找到它#browser=webdriver.Firefox()return browserdef closeBrowser(browser):browser.close()killAllDriver()def killAllDriver():cmd='taskkill/F/IM chromedriver.exe' os.system(cmd)內容來自www.13333515.buzz請勿采集。


  • 本文相關:
  • python使用selenium爬取淘寶異步加載的數據方法
  • python 中的selenium異常處理實例代碼
  • linux 下selenium chrome使用詳解
  • selenium執行javascript腳本參數及返回值過程詳解
  • python + selenium + crontab實現每日定時自動打卡功能
  • selenium啟動chrome時配置選項詳解
  • selenium常見異常解析及解決方案示范
  • 從0開始搭建svn服務器(圖文詳解)
  • 采用軟件負載均衡器實現web服務器集群(iis+nginx)
  • rsync 安裝使用詳解
  • 阿里云存儲服務oss基本概念
  • 數據自動備份解決方案 圖文
  • x-frame-options頭未設置 防止網頁被iframe內框架調用
  • 網站控制臺directadmin中文手冊 linux下虛擬主機管理
  • 服務器購買和初步搭建的方法
  • 什么是websitepanel(基于windows虛擬主機管理系統)
  • 外貿網站屏蔽中國ip訪問的多種方法
  • selenium怎么安裝chrome驅動
  • selenium 怎么打開chrome
  • selenium+java啟動Chrome
  • selenium創建完一個chrome的session后,如何繼續使用這個session?
  • selenium打開chrome瀏覽器時為什么會打開其它的瀏覽器
  • selenium調起chrome輸不了網址
  • 大佬們,java版selenium怎么執行無頭chrome的命令呢
  • 爬蟲 Selenium Chrome報錯 PhantomJS正常
  • python selenium chrome 跳出不安全怎么決絕
  • python+selenium+chrome小白,百度各種方法都試了,怎么破
  • 網站首頁網頁制作腳本下載服務器操作系統網站運營平面設計媒體動畫電腦基礎硬件教程網絡安全星外虛擬主機華眾虛擬主機linuxwin服務器ftp服務器dns服務器tomcat nginxzabbix云和虛擬化服務器其它首頁服務器服務器其它python使用selenium爬取淘寶異步加載的數據方法python 中的selenium異常處理實例代碼linux 下selenium chrome使用詳解selenium執行javascript腳本參數及返回值過程詳解python + selenium + crontab實現每日定時自動打卡功能selenium啟動chrome時配置選項詳解selenium常見異常解析及解決方案示范從0開始搭建svn服務器(圖文詳解)采用軟件負載均衡器實現web服務器集群(iis+nginx)rsync 安裝使用詳解阿里云存儲服務oss基本概念數據自動備份解決方案 圖文x-frame-options頭未設置 防止網頁被iframe內框架調用網站控制臺directadmin中文手冊 linux下虛擬主機管理服務器購買和初步搭建的方法什么是websitepanel(基于windows虛擬主機管理系統)外貿網站屏蔽中國ip訪問的多種方法rsync 常見錯誤與解決方法整理git 常用命令速查表(圖文+表格)raid教程 全程圖解手把手教你做rgit客戶端tortoisegit(windows系服務器共享文件夾設置軟件、文件用兩塊硬盤組建raid0磁盤陣列簡單正確開啟win2008遠程桌面的方法hp ilo2 使用詳細教程[圖文]502 bad gateway是什么意思 502 nas(synology 群暉)首次使用教使用nexus添加jar包到私服里的方法步驟isapi rewrite iis偽靜態組件最新教程git修改和刪除功能_動力節點java學院整理快速分辨清楚 iaas、paas、baas和saasdell dosa 6.x 服務器引導光盤dell systegithub的使用_動力節點java學院整理ibm x346 板載 raid1 功能啟用及win2003系便宜vps多是哪些技術架構方式(vps分割架構mac osx下使用mamp安裝配置php開發環境windows+apache+mod_python配置django運行
    免責聲明 - 關于我們 - 聯系我們 - 廣告聯系 - 友情鏈接 - 幫助中心 - 頻道導航
    Copyright © 2017 www.13333515.buzz All Rights Reserved
    3排列五开奖结果