[我编写了一个代码,通过使用每个股票的ID来抓取股票数据,如下面的代码:
<a class="inst" href="loader.aspx?ParTree=151311&i=33854964748757477" target="33854964748757477">رنيك</a>
其ID为“ 33854964748757477”并且由于它们将添加新库存并删除一些库存,因此我每天都必须修改代码,并且由于有150多个库存消耗时间,因此我正在寻找一种使用属性“ target”将所有ID抓取到的方法通过硒找到它的价值,然后遍历它们。URL为:http://www.tsetmc.com/Loader.aspx?ParTree=15131F
您可以从使用div[class='{c}']
css选择器定位的行中获取ID属性。 WebDriverWait
用于等待Web元素的必要条件。要获得属性presence_of_all_elements_located
,条件就足够了。
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
wait = WebDriverWait(driver, 10)
# get all rows
rows = wait.until(EC.presence_of_all_elements_located((By.CSS_SELECTOR, "div[class='{c}']")))
# get ID attributes from rows
ids = [row.get_attribute("id") for row in rows]