我正在抓取一个网页,我已经设法使用 selenium 将表中的数据提取到一个 csv 文件中。我正在努力的是从表格每一行上的锚标签中获取信息。
我尝试单击表格的所有锚标记以从相应的 URL 获取信息,但在单击第一个 URL 后它停止了。它给出了一个错误消息:过时的元素引用:元素未附加到页面文档。我不确定这是解决这个问题的正确方法。这是我迄今为止尝试过的代码。如果代码格式不正确,我很抱歉,我是 python 和 stackoverflow 的新手。
import csv
import requests
import time
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
browser = webdriver.Chrome(executable_path=r"D:\jewel\chromedriver.exe")
browser.get(('https://e-sourcingni.bravosolution.co.uk/web/login.shtml'))
signInButton = browser.find_element_by_css_selector(".only")
signInButton.click()
time.sleep(5)
table = browser.find_element_by_css_selector(".list-table")
for a in browser.find_elements_by_css_selector(".detailLink"):
a.click()
time.sleep(2)
browser.execute_script("window.history.go(-1)")
time.sleep(2)
with open('output.csv', "w") as f:
writer = csv.writer(f)
writer.writerow(["S.No","Status","Organization","Project Title","First Publishing Date","Work Category","Listing Deadline"])
for row in table.find_elements_by_css_selector('tr'):
writer.writerow([d.text for d in row.find_elements_by_css_selector('td')])
browser.close()
我需要的是从具有类 detailLink 的标签的 href 中获取数据。我无法找到适当的方法来执行此操作。
人到中年有点甜
猛跑小猪
海绵宝宝撒
随时随地看视频慕课网APP
相关分类