谷歌瀏覽器,對於作為程式設計師的我們來說可以是居家必備了,應該用的相當的熟悉了,我們用的最多的應該是network選項吧,一般用來分析網頁載入的請求資訊,比如post引數之類的,這些基本的功能基本上夠用了,今天我說的不是network模組,而是console命令模組的使用,
關於console命令的使用網上也有很多的介紹了,但是大多數的都是互相抄襲,根本不知道誰才是作者,在此和大家分享一下 谷歌控制台的命令的妙用。
通過網上的資訊我得知
目前控制台方法和屬性有:
["$$", "$x", "dir", "dirxml", "keys", "values", "profile", "profileend", "monitorevents", "unmonitorevents", "inspect", "copy", "clear", "geteventlisteners", "undebug", "monitor", "unmonitor", "table", "$0", "$1", "$2", "$3", "$4", "$_"]
今天說的是$x命令。
簡單的說下這個xpath,//表示的是不管前面多少級都匹配(包含一級),/是只匹配一級 ,@符號表示的是取元素的屬性後面緊跟的=內容就是這個值"editor_edit",看上圖我們發現div***挨著的還是div,然後div再下一級就是span了,到此時下xpath可以寫成這樣了、//div[@id='editor_edit']/div/span
但是我們獲取的是span的這個節點,文字資訊一般在節點裡面,獲取節點的文字我們用text(),到目前來說我們已經寫完了,但是這裡要注意的一點是,不同的語言和工具在選擇xpath的一些資訊的時候,多多少少有點不同,這裡我們看一下,我們執行完xpath之後的結果
我們發現我們獲取了乙個text的節點而不是文字資訊,這時候呢,如果在python中使用lxml的已經可以成功獲取文字值了,但是控制台的還要再操作一步
就是我們需要獲取它的nodevalue屬性才可以。我們再進一步寫就是這一樣
$x("//div[@id='editor_edit']/div/span/text()")[0]
在這裡說個小技巧,我們在寫完上面的內容之後 會發現我們點方法的時候點不出東西,這個時候我們可以這樣寫
var temp=$x("//div[@id='editor_edit']/div/span/text()")[0]
獲取之後我們再看結果,咦underfined,逗我呢,?
emmm。。 ,,相信大家在初學python的時候也遇到過相似的問題,方法的預設返回值none,嗯 這個時候我們就知道了
這個情況型別,不用在乎這個返回值了,我們需要的不是這個值,經過上面的操作,我們做了一件什麼事兒呢,
把獲取的節點結果賦值給temp這個變數,此時temp可以作為全域性變數存在,好了這時候 我們temp.一下發現 好多屬性提示都出來了
ok,這個$x的功能就是這麼簡單,同時我們在除錯過程中也方便了許多。喜歡的小伙兒們隨手**一下吧,後續和大家分析其他的關於谷歌瀏覽器控制台的操作內容。
上面都是對元素進行一次xpath操作,有時候我們需要在當前節點下面操作節點,這時候怎麼做呢,
我在網上找到了$x的原始碼:
$x
=
function (xpath, context)
} catch (e)
return
nodes;
}
$x(
".//input[@type='submit']"
,$x(
"//form[@id='form']"
))
控制台引數的妙用
測試一些方法,有些引數需要變化,於是想到用迴圈來變動引數。但引數一變化,而方法內有類似快取的機制,裡面不動,一定要用迴圈的話,得改好多地方,改了一會還是有部分地方不能用,有點絕望了,難道要乙個個地去輸入?突然想到了控制台的引數,還是挺好用的。using system console.writelin...
chrome控制台小技巧
對於大多數開發人員來說,chrome控制台最常用的命令就是 console.log 了,然後還有一些其他類似的命令,如 console.info 提示資訊 console.error 錯誤資訊 console.warn 警示資訊 然而,這些命令可能很多人都知道,然而,console.log 支援的多...
Chrome 控制台console的用法
google瀏覽器除錯時可能會用到 1 console.log用於輸出普通資訊 2 console.info用於輸出提示性資訊 3 console.error用於輸出錯誤資訊 4 console.warn用於輸出警示資訊 7 console.assert對輸入的表示式進行斷言,只有表示式為false...