使用 Python 使用 Headless Selenium 浏览器提取数据

Extracting data with Headless Selenium browser with Python

我正在尝试找到一种方法,通过 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 对象。

因为据我了解,dataLayer 是一个全局变量,所以使用 execute_script():

driver.execute_script("return dataLayer;")

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

或者,至少,增加 page load timeout:

driver.set_page_load_timeout(10)