我是硒的新手。您能解释一下为什么driver.title无法获得值吗?下面是一个简单的webdriver脚本。我可以在https://www.google.com上获取该值,但不能在https://twitter.com上获取该值 。
from selenium import webdriver
options = webdriver.ChromeOptions()
options.add_argument('--headless')
options.add_argument('--no-sandbox')
options.add_argument('--disable-gpu')
driver = webdriver.Chrome(options=options)
driver.get("https://twitter.com")
print(driver.title)
问题来源:stackoverflow
Twitter的标题渲染速度有些慢,因此您可以在此处使用显式的wait等待该元素先加载,然后再获取该标题。
您可以这样做:
from selenium import webdriver
options = webdriver.ChromeOptions()
options.add_argument('--headless')
options.add_argument('--no-sandbox')
options.add_argument('--disable-gpu')
driver = webdriver.Chrome(options=options)
driver.get("https://twitter.com")
WebDriverWait(driver, 20).until(EC.presence_of_element_located((By.XPATH, "//span[text()='Log in']")))
print(driver.title)
注意:您必须添加以下导入:
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC
回答来源:stackoverflow
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。