Python Selenium无法加载完整的页面源代码

3
来自Selenium网页的源代码似乎不完整。
driver = webdriver.Chrome()
driver.get('https://www.youtube2mp3.cc/')

vid_name = driver.find_element_by_id('input')
vid_name.send_keys('https://www.youtube.com/watch?v=NVbH1BVXywY') 
driver.find_element_by_id('button').click()


element = WebDriverWait(driver, 5).until(
        EC.presence_of_element_located((By.ID, 'download'))
)


url = driver.page_source
url = str(url)
soup = BeautifulSoup(url,"html.parser")
print(soup)

当我访问这个链接时,href为空。

<a href="" id="download" rel="nofollow">Download</a>

当我使用时间延迟时,似乎可以正常工作,但我想知道如何使用WebDriverWait来确保具有id = download的href加载。
2个回答

0
WebDriverWait 等待下载按钮具有 href
element = WebDriverWait(driver, 5).until(
        EC.presence_of_element_located((By.XPATH, './/a[@id="download" and @href!=""]'))
)

0
from selenium import webdriver
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()
driver.get("https://www.youtube2mp3.cc/")
try:
    element = WebDriverWait(driver, 10).until(
        EC.presence_of_element_located((By.ID, "download"))
    )

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接