gpt4 book ai didi

python - 无法从网页中抓取标题

转载 作者:太空宇宙 更新时间:2023-11-03 15:42:53 24 4
gpt4 key购买 nike

我使用 selenium 在 python 中编写了一个脚本来解析填充输入框并按下 Go 按钮时填充的一些结果。目前我的脚本很好地完成了这部分。但是,我的主要目标是将该容器的标题也作为 Toys & Games 进行解析。

这是我到目前为止的尝试(我找不到任何想法来制作一个循环来对所有容器执行相同的操作):

import time
from selenium import webdriver
from selenium.webdriver.common.keys import Keys

url = "https://www.fbatoolkit.com/"

driver = webdriver.Chrome()
driver.get(url)
time.sleep(3)
driver.find_element_by_css_selector(".estimator-container .estimator-input").send_keys("25000",Keys.RETURN)
time.sleep(2)
item = driver.find_element_by_css_selector(".estimator-result div").text
print(item)
driver.quit()

我得到的结果:

4 (30 Days Avg)

我想要的结果:

Toys & Games
4 (30 Days Avg)

Link to an image ,您可以在其中查看它们在该站点中的外观。预期字段也用铅笔标记,让您知道我要解析的字段的位置。

最佳答案

尝试下面的代码以获得所需的输出

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 as wait
from selenium.webdriver.support import expected_conditions as EC


url = "https://www.fbatoolkit.com/"

driver = webdriver.Chrome()
driver.get(url)

for container in wait(driver, 10).until(EC.visibility_of_all_elements_located((By.CSS_SELECTOR, "div[class='chart-container']"))):
wait(container, 10).until(EC.element_to_be_clickable((By.CSS_SELECTOR, "input.estimator-input"))).send_keys("25000", Keys.RETURN)
title = wait(container, 10).until(EC.presence_of_element_located((By.CSS_SELECTOR, ".chart text"))).text
item = wait(container, 10).until(EC.presence_of_element_located((By.CSS_SELECTOR, ".estimator-result div"))).text
print(title, item)

driver.quit()

关于python - 无法从网页中抓取标题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51578683/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com