【发布时间】:2019-02-19 14:47:17
【问题描述】:
我的问题是我需要网格中包含来自网站https://applipedia.paloaltonetworks.com 的子域的所有数据 - (包含名称、类别、子类别、风险、技术的数据)。我需要的是 [示例:在第 5 行:2ch 有 2 个子域 |_2ch-base 和 2ch-posting。像这样我只想获取所有具有子域的应用程序列表]
每当我尝试在该行中添加任何内容时都不会:
table =wait.until(EC.presence_of_all_elements_located((By.CSS_SELECTOR, 'tbody#bodyScrollingTable tr')))
我收到超时错误。
下面是我目前拥有的脚本,它从网格中获取所有数据,但我只需要应用程序并且它包含子域。[示例 2ch、2ch-base、2ch-posting]。我通过检查元素发现了一种模式,即所有没有子域的应用程序都有 (),或者我们可以通过 () 字段,这对于所有具有子域的应用程序都是常见的。任何解决此问题的帮助将不胜感激。
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
driver = webdriver.Chrome(executable_path = r'/Users/am/Downloads/chromedriver')
driver.maximize_window()
driver.get("https://applipedia.paloaltonetworks.com/")
wait = WebDriverWait(driver,30)
table =wait.until(EC.presence_of_all_elements_located((By.CSS_SELECTOR, 'tbody#bodyScrollingTable tr')))
for tab in table:
print(tab.text)
【问题讨论】:
标签: python selenium selenium-webdriver webdriver webdriverwait