使用带有Head的无头Selenium浏览器提取数据

时间:2015-05-05 18:50:49

标签: python selenium selenium-webdriver

我正试图找到一种方法,通过Python从无头浏览器的网站中提取GA数据层对象,因此;我按照here的说明操作 和...

from selenium import webdriver

driver = webdriver.PhantomJS()
driver.get("http://www.example.com/")
# DL = currentURL.dataLayer 
# Do something with DL

我在这里找的关键字是什么? driver.something应该给我dataLayer对象。提醒一下:dataLayer对象是一个javascript对象。

1 个答案:

答案 0 :(得分:2)

根据我的理解,var str = "i like barbeque at dawn"; var regex = /(?=\b([a-zA-Z]+ [a-zA-Z]+)\b)/g; var matches= []; while ((match = regex.exec(str)) != null) { if (match.index === regex.lastIndex) regex.lastIndex++; matches.push(match[1]); } console.log(matches); //=> ["i like", "like barbeque", "barbeque at", "at dawn"] 是一个全局变量,请使用execute_script()

dataLayer

请注意,在执行脚本之前,您可能需要explicitly wait才能加载页面。

或者至少增加page load timeout

driver.execute_script("return dataLayer;")