我安装了PhantomJS 1.9.0。
我尝试使用以下代码下载页面并显示HTML。
from selenium import webdriver
driver = webdriver.PhantomJS(service_args=['--ignore-ssl- errors=true'])
page = driver.get('http://example.com')
print(page.page_source)
我收到以下错误:
/usr/bin/python3.4 phantom.py
Traceback (most recent call last):
File "phantom.py", line 5, in <module>
print(page.page_source)
AttributeError: 'NoneType' object has no attribute 'page_source'
显然这意味着driver.get不起作用,但原因是什么?
答案 0 :(得分:2)
问题是您在page_source
变量上调用page
属性,这是不正确的。所有get
方法都会导航到参数中指定的URL,但它不会返回要存储在page
变量中的任何内容,这就是错误表明它是NoneType对象的原因。您需要做的是调用driver
变量上的属性。
from selenium import webdriver
driver = webdriver.PhantomJS(service_args=['--ignore-ssl-errors=true'])
print(driver.page_source)
答案 1 :(得分:1)
我目前对于为什么没有很好的解释,但是分配这样的页面由于某种原因不起作用
from selenium import webdriver
driver = webdriver.PhantomJS(service_args=['--ignore-ssl-errors=true'])
driver.get('http://example.com')
html_content = driver.page_source
print(html_content)
driver.close()
我将继续寻找并阅读文档,看看我能否找到原因