成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

16、web爬蟲(chóng)講解2—PhantomJS虛擬瀏覽器+selenium模塊操作PhantomJS

xietao3 / 1895人閱讀

摘要:百度云搜索,搜各種資料搜網(wǎng)盤(pán),搜各種資料虛擬瀏覽器是一個(gè)基于的內(nèi)核無(wú)頭瀏覽器也就是沒(méi)有顯示界面的瀏覽器,利用這個(gè)軟件,可以獲取到網(wǎng)址加載的任何信息,也就是可以獲取瀏覽器異步加載的信息下載網(wǎng)址下載對(duì)應(yīng)系統(tǒng)版本下載后解壓文件,將解壓文件夾,剪切

【百度云搜索,搜各種資料:http://www.bdyss.cn】 【搜網(wǎng)盤(pán),搜各種資料:http://www.swpan.cn】

PhantomJS虛擬瀏覽器

phantomjs 是一個(gè)基于js的webkit內(nèi)核無(wú)頭瀏覽器 也就是沒(méi)有顯示界面的瀏覽器,利用這個(gè)軟件,可以獲取到網(wǎng)址js加載的任何信息,也就是可以獲取瀏覽器異步加載的信息

下載網(wǎng)址:http://phantomjs.org/download... ?下載對(duì)應(yīng)系統(tǒng)版本

下載后解壓PhantomJS文件,將解壓文件夾,剪切到python安裝文件夾

然后將PhantomJS文件夾里的bin文件夾添加系統(tǒng)環(huán)境變量

cdm 輸入命令:PhantomJS ?出現(xiàn)以下信息說(shuō)明安裝成功

selenium模塊是一個(gè)python操作PhantomJS軟件的一個(gè)模塊

selenium模塊PhantomJS軟件

webdriver.PhantomJS()實(shí)例化PhantomJS瀏覽器對(duì)象
get("url")訪問(wèn)網(wǎng)站
find_element_by_xpath("xpath表達(dá)式")通過(guò)xpath表達(dá)式找對(duì)應(yīng)元素
clear()清空輸入框里的內(nèi)容
send_keys("內(nèi)容")將內(nèi)容寫(xiě)入輸入框
click()點(diǎn)擊事件
get_screenshot_as_file("截圖保存路徑名稱")將網(wǎng)頁(yè)截圖,保存到此目錄
page_source獲取網(wǎng)頁(yè)htnl源碼
quit()關(guān)閉PhantomJS瀏覽器

#!/usr/bin/env?python
#?-*-?coding:utf8?-*-
from?selenium?import?webdriver??#導(dǎo)入selenium模塊來(lái)操作PhantomJS
import?os
import?time
import?re

llqdx?=?webdriver.PhantomJS()??#實(shí)例化PhantomJS瀏覽器對(duì)象
llqdx.get("https://www.baidu.com/")?#訪問(wèn)網(wǎng)址

#?time.sleep(3)???#等待3秒
#?llqdx.get_screenshot_as_file("H:/py/17/img/123.jpg")??#將網(wǎng)頁(yè)截圖保存到此目錄

#模擬用戶操作
llqdx.find_element_by_xpath("http://*[@id="kw"]").clear()????????????????????#通過(guò)xpath表達(dá)式找到輸入框,clear()清空輸入框里的內(nèi)容
llqdx.find_element_by_xpath("http://*[@id="kw"]").send_keys("叫賣(mài)錄音網(wǎng)")?????#通過(guò)xpath表達(dá)式找到輸入框,send_keys()將內(nèi)容寫(xiě)入輸入框
llqdx.find_element_by_xpath("http://*[@id="su"]").click()????????????????????#通過(guò)xpath表達(dá)式找到搜索按鈕,click()點(diǎn)擊事件

time.sleep(3)???#等待3秒
llqdx.get_screenshot_as_file("H:/py/17/img/123.jpg")??#將網(wǎng)頁(yè)截圖,保存到此目錄

neir?=?llqdx.page_source???#獲取網(wǎng)頁(yè)內(nèi)容
print(neir)
llqdx.quit()????#關(guān)閉瀏覽器

pat?=?"(.*?)"
title?=?re.compile(pat).findall(neir)??#正則匹配網(wǎng)頁(yè)標(biāo)題
print(title)

PhantomJS瀏覽器偽裝,和滾動(dòng)滾動(dòng)條加載數(shù)據(jù)

有些網(wǎng)站是動(dòng)態(tài)加載數(shù)據(jù)的,需要滾動(dòng)條滾動(dòng)加載數(shù)據(jù)

實(shí)現(xiàn)代碼

DesiredCapabilities?偽裝瀏覽器對(duì)象
execute_script()執(zhí)行js代碼

current_url獲取當(dāng)前的url

#!/usr/bin/env?python
#?-*-?coding:utf8?-*-
from?selenium?import?webdriver??#導(dǎo)入selenium模塊來(lái)操作PhantomJS
from?selenium.webdriver.common.desired_capabilities?import?DesiredCapabilities???#導(dǎo)入瀏覽器偽裝模塊
import?os
import?time
import?re

dcap?=?dict(DesiredCapabilities.PHANTOMJS)
dcap["phantomjs.page.settings.userAgent"]?=?("Mozilla/5.0?(Windows?NT?10.0;?WOW64)?AppleWebKit/537.36?(KHTML,?like?Gecko)?Chrome/49.0.2623.221?Safari/537.36?SE?2.X?MetaSr?1.0")
print(dcap)
llqdx?=?webdriver.PhantomJS(desired_capabilities=dcap)??#實(shí)例化PhantomJS瀏覽器對(duì)象

llqdx.get("https://www.jd.com/")?#訪問(wèn)網(wǎng)址

#模擬用戶操作
for?j?in?range(20):
????js3?=?"window.scrollTo("+str(j*1280)+","+str((j+1)*1280)+")"
????llqdx.execute_script(js3)??#執(zhí)行js語(yǔ)言滾動(dòng)滾動(dòng)條
????time.sleep(1)

llqdx.get_screenshot_as_file("H:/py/17/img/123.jpg")??#將網(wǎng)頁(yè)截圖,保存到此目錄

url?=?llqdx.current_url
print(url)

neir?=?llqdx.page_source???#獲取網(wǎng)頁(yè)內(nèi)容
print(neir)
llqdx.quit()????#關(guān)閉瀏覽器

pat?=?"(.*?)"
title?=?re.compile(pat).findall(neir)??#正則匹配網(wǎng)頁(yè)標(biāo)題
print(title)

【轉(zhuǎn)載自:http://www.lqkweb.com】

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/45086.html

相關(guān)文章

  • Python3網(wǎng)絡(luò)爬蟲(chóng)實(shí)戰(zhàn)---2、請(qǐng)求庫(kù)安裝:GeckoDriver、PhantomJS、Aioh

    摘要:上一篇文章網(wǎng)絡(luò)爬蟲(chóng)實(shí)戰(zhàn)請(qǐng)求庫(kù)安裝下一篇文章網(wǎng)絡(luò)爬蟲(chóng)實(shí)戰(zhàn)解析庫(kù)的安裝的安裝在上一節(jié)我們了解了的配置方法,配置完成之后我們便可以用來(lái)驅(qū)動(dòng)瀏覽器來(lái)做相應(yīng)網(wǎng)頁(yè)的抓取。上一篇文章網(wǎng)絡(luò)爬蟲(chóng)實(shí)戰(zhàn)請(qǐng)求庫(kù)安裝下一篇文章網(wǎng)絡(luò)爬蟲(chóng)實(shí)戰(zhàn)解析庫(kù)的安裝 上一篇文章:Python3網(wǎng)絡(luò)爬蟲(chóng)實(shí)戰(zhàn)---1、請(qǐng)求庫(kù)安裝:Requests、Selenium、ChromeDriver下一篇文章:Python3網(wǎng)絡(luò)爬蟲(chóng)實(shí)戰(zhàn)--...

    Cristalven 評(píng)論0 收藏0
  • Python爬蟲(chóng)使用Selenium+PhantomJS抓取Ajax和動(dòng)態(tài)HTML內(nèi)容

    摘要:,集搜客開(kāi)源代碼下載源開(kāi)源網(wǎng)絡(luò)爬蟲(chóng)源,文檔修改歷史,增補(bǔ)文字說(shuō)明,增加第五章源代碼下載源,并更換源的網(wǎng)址 showImg(https://segmentfault.com/img/bVvMn3); 1,引言 在Python網(wǎng)絡(luò)爬蟲(chóng)內(nèi)容提取器一文我們?cè)敿?xì)講解了核心部件:可插拔的內(nèi)容提取器類(lèi)gsExtractor。本文記錄了確定gsExtractor的技術(shù)路線過(guò)程中所做的編程實(shí)驗(yàn)。這是第二...

    ymyang 評(píng)論0 收藏0
  • 爬蟲(chóng)框架WebMagic源碼分析之Selenium

    摘要:有一個(gè)模塊其中實(shí)現(xiàn)了一個(gè)。但是感覺(jué)靈活性不大。接口如下它會(huì)獲得一個(gè)實(shí)例,你可以在里面進(jìn)行任意的操作。本部分到此結(jié)束。 webmagic有一個(gè)selenium模塊,其中實(shí)現(xiàn)了一個(gè)SeleniumDownloader。但是感覺(jué)靈活性不大。所以我就自己參考實(shí)現(xiàn)了一個(gè)。 首先是WebDriverPool用來(lái)管理WebDriver池: import java.util.ArrayList; im...

    MarvinZhang 評(píng)論0 收藏0
  • 在headless模式下運(yùn)行selenium

    摘要:而在不久前宣布支持模式而后跟隨的新聞再次勾起我無(wú)盡的回憶。那么我們就來(lái)談?wù)勗诤蜑g覽器不原生支持模式下如何使用來(lái)實(shí)現(xiàn)模式進(jìn)行動(dòng)態(tài)數(shù)據(jù)的抓取。比較常見(jiàn)的例子在中進(jìn)行轉(zhuǎn)發(fā)。下面我們進(jìn)行測(cè)試發(fā)現(xiàn)其可以正常的運(yùn)行。 原文地址: http://52sox.com/python-use-h... 在Python中進(jìn)行瀏覽器測(cè)試時(shí),一般我們會(huì)選擇selenium這樣的庫(kù)來(lái)簡(jiǎn)化我們工作量。而有些時(shí)候,為...

    MoAir 評(píng)論0 收藏0
  • Python網(wǎng)頁(yè)信息采集:使用PhantomJS采集淘寶天貓商品內(nèi)容

    摘要:,引言最近一直在看爬蟲(chóng)框架,并嘗試使用框架寫(xiě)一個(gè)可以實(shí)現(xiàn)網(wǎng)頁(yè)信息采集的簡(jiǎn)單的小程序。本文主要介紹如何使用結(jié)合采集天貓商品內(nèi)容,文中自定義了一個(gè),用來(lái)采集需要加載的動(dòng)態(tài)網(wǎng)頁(yè)內(nèi)容。 showImg(https://segmentfault.com/img/bVyMnP); 1,引言 最近一直在看Scrapy 爬蟲(chóng)框架,并嘗試使用Scrapy框架寫(xiě)一個(gè)可以實(shí)現(xiàn)網(wǎng)頁(yè)信息采集的簡(jiǎn)單的小程序。嘗試...

    z2xy 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<