4.簡單爬蟲——selenium的環(huán)境安裝 Ubuntu環(huán)境

該內(nèi)容僅供學(xué)習(xí)串稀,如有錯(cuò)誤粥庄,歡迎指出

selenium [1] 是一個(gè)用于Web應(yīng)用程序測試的工具。Selenium測試直接運(yùn)行在瀏覽器中叛买,就像真正的用戶在操作一樣砂代。支持的瀏覽器包括IE(7, 8, 9, 10, 11),Mozilla Firefox率挣,Safari刻伊,Google Chrome,Opera等椒功。這個(gè)工具的主要功能包括:測試與瀏覽器的兼容性——測試你的應(yīng)用程序看是否能夠很好得工作在不同瀏覽器和操作系統(tǒng)之上捶箱。測試系統(tǒng)功能——?jiǎng)?chuàng)建回歸測試檢驗(yàn)軟件功能和用戶需求。支持自動(dòng)錄制動(dòng)作和自動(dòng)生成 .Net动漾、Java丁屎、Perl等不同語言的測試腳本。

在這里旱眯,我們使用selenium對我們的爬蟲進(jìn)行輔助

環(huán)境 Ubuntu18.04
Chrome 本 67.0.3396.62(正式版本)
Firefox 60.0.1 (64 位)

selenium可以使用代碼晨川,對瀏覽器進(jìn)行一個(gè)自動(dòng)化的操作。但是既然要使用代碼進(jìn)行操作键思,那他一定需要異構(gòu)驅(qū)動(dòng)器础爬。
首先我們來看他的一些部分代碼

from selenium import webdriver

lagou_url = "https://www.lagou.com/zhaopin/xinmeitiyunying/?labelWords=label"
baidu_url = "https://www.baidu.com/"

browser = webdriver.Firefox()
browser = webdriver.Chrome()
browser = webdriver.Android()
browser = webdriver.PhantomJS()

browser.get(baidu_url)
print(browser.page_source)
browser.close()

其中browser定義了多種瀏覽器,selenium支持多種瀏覽器吼鳞。但是不同的瀏覽器他所需要的驅(qū)動(dòng)器不一樣
請看下面這張表格
下載chrome瀏覽器驅(qū)動(dòng)地址:http://chromedriver.storage.googleapis.com/index.html
下載firefox瀏覽器驅(qū)動(dòng)地址: https://github.com/mozilla/geckodriver/releases/
chrome版本對應(yīng): https://chromedriver.storage.googleapis.com/
常用的兩個(gè)看蚜,其他的自行搜索
下載好之后,我們有兩種使用的方法
1.將驅(qū)動(dòng)放置在python3同目錄之下赔桌,在ubuntu下是放置在/usr/bin下面
2.在browser = webdriver.Chrome()下直接寫入你驅(qū)動(dòng)器的路徑

該錯(cuò)誤表示你沒有裝驅(qū)動(dòng)器供炎,這里我用phantomjs做舉例

/home/alpaca/.local/share/virtualenvs/Pipenv-zDk3T9d3/bin/python3 /home/alpaca/hello/test.py
/home/alpaca/.local/share/virtualenvs/Pipenv-zDk3T9d3/lib/python3.6/site-packages/selenium/webdriver/phantomjs/webdriver.py:49: UserWarning: Selenium support for PhantomJS has been deprecated, please use headless versions of Chrome or Firefox instead
  warnings.warn('Selenium support for PhantomJS has been deprecated, please use headless '
Traceback (most recent call last):
  File "/home/alpaca/.local/share/virtualenvs/Pipenv-zDk3T9d3/lib/python3.6/site-packages/selenium/webdriver/common/service.py", line 76, in start
    stdin=PIPE)
  File "/usr/lib/python3.6/subprocess.py", line 709, in __init__
    restore_signals, start_new_session)
  File "/usr/lib/python3.6/subprocess.py", line 1344, in _execute_child
    raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'phantomjs': 'phantomjs'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/alpaca/hello/test.py", line 7, in <module>
    browser = webdriver.PhantomJS()
  File "/home/alpaca/.local/share/virtualenvs/Pipenv-zDk3T9d3/lib/python3.6/site-packages/selenium/webdriver/phantomjs/webdriver.py", line 56, in __init__
    self.service.start()
  File "/home/alpaca/.local/share/virtualenvs/Pipenv-zDk3T9d3/lib/python3.6/site-packages/selenium/webdriver/common/service.py", line 83, in start
    os.path.basename(self.path), self.start_error_message)
selenium.common.exceptions.WebDriverException: Message: 'phantomjs' executable needs to be in PATH. 

測試了chrome 在ubuntu下出現(xiàn)了

/home/alpaca/.local/share/virtualenvs/Pipenv-zDk3T9d3/bin/python3 /home/alpaca/hello/test.py
Traceback (most recent call last):
  File "/home/alpaca/hello/test.py", line 7, in <module>
    browser = webdriver.Chrome()
  File "/home/alpaca/.local/share/virtualenvs/Pipenv-zDk3T9d3/lib/python3.6/site-packages/selenium/webdriver/chrome/webdriver.py", line 68, in __init__
    self.service.start()
  File "/home/alpaca/.local/share/virtualenvs/Pipenv-zDk3T9d3/lib/python3.6/site-packages/selenium/webdriver/common/service.py", line 98, in start
    self.assert_process_still_running()
  File "/home/alpaca/.local/share/virtualenvs/Pipenv-zDk3T9d3/lib/python3.6/site-packages/selenium/webdriver/common/service.py", line 111, in assert_process_still_running
    % (self.path, return_code)
selenium.common.exceptions.WebDriverException: Message: Service chromedriver unexpectedly exited. Status code was: 127

這一塊錯(cuò)誤,但是找了很多帖子疾党,也沒有辦法解決音诫,所以我嘗試了firefox

Firfox測試成功

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市雪位,隨后出現(xiàn)的幾起案子竭钝,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,820評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件香罐,死亡現(xiàn)場離奇詭異卧波,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)庇茫,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,648評論 3 399
  • 文/潘曉璐 我一進(jìn)店門港粱,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人旦签,你說我怎么就攤上這事查坪。” “怎么了宁炫?”我有些...
    開封第一講書人閱讀 168,324評論 0 360
  • 文/不壞的土叔 我叫張陵偿曙,是天一觀的道長。 經(jīng)常有香客問我羔巢,道長师痕,這世上最難降的妖魔是什么踩验? 我笑而不...
    開封第一講書人閱讀 59,714評論 1 297
  • 正文 為了忘掉前任妆够,我火速辦了婚禮晤郑,結(jié)果婚禮上永脓,老公的妹妹穿的比我還像新娘袍辞。我一直安慰自己,他們只是感情好常摧,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,724評論 6 397
  • 文/花漫 我一把揭開白布搅吁。 她就那樣靜靜地躺著,像睡著了一般落午。 火紅的嫁衣襯著肌膚如雪谎懦。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,328評論 1 310
  • 那天溃斋,我揣著相機(jī)與錄音界拦,去河邊找鬼。 笑死梗劫,一個(gè)胖子當(dāng)著我的面吹牛享甸,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播梳侨,決...
    沈念sama閱讀 40,897評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼蛉威,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了走哺?” 一聲冷哼從身側(cè)響起蚯嫌,我...
    開封第一講書人閱讀 39,804評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后择示,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體束凑,經(jīng)...
    沈念sama閱讀 46,345評論 1 318
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,431評論 3 340
  • 正文 我和宋清朗相戀三年对妄,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了湘今。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,561評論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡剪菱,死狀恐怖摩瞎,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情孝常,我是刑警寧澤旗们,帶...
    沈念sama閱讀 36,238評論 5 350
  • 正文 年R本政府宣布,位于F島的核電站构灸,受9級特大地震影響上渴,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜喜颁,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,928評論 3 334
  • 文/蒙蒙 一稠氮、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧半开,春花似錦隔披、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,417評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至纠永,卻和暖如春鬓长,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背尝江。 一陣腳步聲響...
    開封第一講書人閱讀 33,528評論 1 272
  • 我被黑心中介騙來泰國打工涉波, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人炭序。 一個(gè)月前我還...
    沈念sama閱讀 48,983評論 3 376
  • 正文 我出身青樓怠蹂,卻偏偏與公主長得像,于是被迫代替她去往敵國和親少态。 傳聞我的和親對象是個(gè)殘疾皇子城侧,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,573評論 2 359

推薦閱讀更多精彩內(nèi)容

  • Selenium是一款強(qiáng)大的基于瀏覽器的開源自動(dòng)化測試工具,最初由 Jason Huggins 于 2004 年在...
    FifiZhuang閱讀 7,628評論 5 71
  • 洞見SELENIUM自動(dòng)化測試 寫在最前面:目前自動(dòng)化測試并不屬于新鮮的事物彼妻,或者說自動(dòng)化測試的各種方法論已經(jīng)層出...
    厲鉚兄閱讀 6,732評論 3 47
  • 這篇文章在介紹官網(wǎng)的同時(shí)使用了比較多的腳本示例嫌佑,示例里遇到的問題有部分在本篇文章進(jìn)行了解釋豆茫,還有一篇文章專門記錄了...
    顧顧314閱讀 12,939評論 3 32
  • 安裝Selenium sudo pip install selenium 由于Ubuntu中自帶了FireFox游...
    卷卷_麥芽呀閱讀 5,225評論 0 4
  • 飲聞卷書醉清秋 眼談今日似明日 寒風(fēng)散盡四月歸 一嬈亦俏花日紅 ——“網(wǎng)”ZS
    笨魚也想飛閱讀 211評論 0 1