使用Python Selenium访问网页上的表对象

问题描述

一段时间以来,我尝试从网页中提取以下表格。

我正在尝试进入站点(1-8)上不同页面的//tr对象。我设法存储并打开了页面,并希望循环遍历表tbody,它包含表示我想要访问的信息行的//tr对象:

但是,在运行以下代码时,我只获得所有8个页面中的第一个入口。

# Imports required for explicit waits

from selenium import webdriver
from selenium.webdriver.support.wait import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
import pandas as pd
import time

webside = 'https://www.xxx.dk/find-arkitekt?display_view=block_3&field_company_region=All'

driver = webdriver.Chrome(executable_path=r'C:UsersKristerJensDownloadschromedriver_win32chromedriver')
driver.implicitly_wait(10)    
driver.get(webside)    
wait = WebDriverWait(driver,10)

# Cookie Accept

driver.execute_script("arguments[0].click();", wait.until(EC.element_to_be_clickable((By.XPATH, "//button[@class='agree-button eu-cookie-compliance-default-button']"))))

# Get pages from products to Extract information from product web pages

pages = []

for page in driver.find_elements_by_xpath("//div[@class='pagination']//ul[@class='pager__items js-pager__items list-pages']//li"):
    pages.append(page.find_element_by_tag_name('a').get_attribute("href"))
    
for i in pages:
    driver.get(i)
    
    options = driver.find_element_by_xpath("//div[@class='architect-view-table']//table[@class='cols-5 responsive-enabled']//tbody//tr")
    
    virk=[]
    post=[]
    by=[]
    web=[]
    mail=[]    
    
    for opt in options:
        print(opt)
        virk.append(driver.find_element_by_xpath("//div[@class='architect-view-table']//table[@class='cols-5 responsive-enabled']//thead//th[@class='icon-markunread-mailbox priority-low views-align-left views-field views-field-field-company-zip views-align-left']").text)
        post.append(driver.find_element_by_xpath("//div[@class='architect-view-table']//table[@class='cols-5 responsive-enabled']//thead//th[@class='icon-markunread-mailbox priority-low views-align-left views-field views-field-field-company-zip views-align-left']").text)
        by.append(driver.find_element_by_xpath("//div[@class='architect-view-table']//table[@class='cols-5 responsive-enabled']//thead//th[@class='icon-markunread-mailbox priority-low views-align-left views-field views-field-field-company-zip views-align-left']").text)
        web.append(driver.find_element_by_xpath("//div[@class='architect-view-table']//table[@class='cols-5 responsive-enabled']//thead//th[@class='icon-markunread-mailbox priority-low views-align-left views-field views-field-field-company-zip views-align-left']").text)
        mail.append(driver.find_element_by_xpath("//div[@class='architect-view-table']//table[@class='cols-5 responsive-enabled']//thead//th[@class='icon-markunread-mailbox priority-low views-align-left views-field views-field-field-company-zip views-align-left']").text)

如何在所有8页上使用class=";COLS=-5\f25 RESPONSIVE-ENABLED";访问本能表中的所有行?

我已经试了这么久了,如果有任何帮助,我将不胜感激!


解决方案

要擦除病毒、帖子、作者、网站和邮件信息,您可以使用Locator Strategies:

挡路代码:

driver = webdriver.Chrome(executable_path=r'C:WebDriverChromeDriverchromedriver.exe', options=options)
driver.get("https://www.danskeark.dk/find-arkitekt?display_view=block_3&field_company_region=All")
virks = [my_elem.text for my_elem in WebDriverWait(driver, 20).until(EC.visibility_of_all_elements_located((By.XPATH, "//td[@headers='view-title-1-table-column']")))]
posts = [my_elem.text for my_elem in WebDriverWait(driver, 20).until(EC.visibility_of_all_elements_located((By.XPATH, "//td[@headers='view-field-company-zip-table-column']")))]
bys = [my_elem.text for my_elem in WebDriverWait(driver, 20).until(EC.visibility_of_all_elements_located((By.XPATH, "//td[@headers='view-field-company-town-table-column']")))]
webs = [my_elem.text for my_elem in WebDriverWait(driver, 20).until(EC.visibility_of_all_elements_located((By.XPATH, "//td[@headers='view-field-company-website-1-table-column']")))]
mails = [my_elem.text for my_elem in WebDriverWait(driver, 20).until(EC.visibility_of_all_elements_located((By.XPATH, "//td[@headers='view-field-company-email-1-table-column']")))]
for i,j,k,l,m in zip(virks, posts, bys, webs, mails):
    print(f"Virk:{i} Post:{j} By:{k} Web:{l} Mail:{m}")
driver.quit()

控制台输出:

Virk:& Wainø IVS Post:2400 By:København NV Web: Mail:tomas@ogwaino.dk
Virk:1:1 landskab ApS Post:2500 By:Valby Web:www.1til1landskab.dk Mail:info@1til1landskab.dk
Virk:2r arkitekter ApS Post:2100 By:København Ø Web:www.2r-arkitekter.dk Mail:rs@a2rk.dk
Virk:3XN A/S Post:1437 By:København K Web:www.3xn.dk Mail:3xn@3xn.dk
Virk:A-PLAN Arkitekter Post:4800 By:Nykøbing F Web:www.a-plan.dk Mail:ka@a-plan.dk
Virk:a-tjek skive aps Post:7860 By:Spøttrup Web:www.a-tjek.dk Mail:skive@a-tjek.dk
Virk:A.BECH ApS Post:2200 By:København N Web: Mail:andreas@a-bech.com
Virk:A.R.K. Rådgivning v/Steen Stougård Post:8240 By:Risskov Web: Mail:risark@webspeed.dk
Virk:A1 Tegnestue ApS Post:5210 By:Odense NV Web:www.a1tegnestue.dk Mail:ja@a1tegnestue.dk
Virk:Aaberg Arkitekter Post:2450 By:København SV Web:www.aabergarkitekter.dk Mail:jens@aabergarkitekter.dk
Virk:Aagaard Landskab Post:2800 By:Kongens Lyngby Web:www.aagaardlandskab.dk Mail:afa@aagaardlandskab.dk
Virk:AART architects DK A/S Post:8000 By:Aarhus C Web:www.aart.dk Mail:aart@aart.dk
Virk:Abildskov Arkitekter Post:2720 By:Vanløse Web: Mail:jan.abildskov@petersen.dk
Virk:Abrahamsen - Arkitekt & Bygherrerådgivning Post:4600 By:Køge Web:www.aogb.dk Mail:ha@aogb.dk
Virk:Adam Trier Jacobsen Arkitekt & Designer ApS Post:2920 By:Charlottenlund Web: Mail:arkitekt@AdamTrier.dk
Virk:ADEPT ApS Post:2200 By:København N Web:www.adept.dk Mail:mail@adept.dk
Virk:Adham Architects I/S Post:9490 By:Pandrup Web:www.adhamarchitects.dk Mail:Info@adhamarchitects.dk
Virk:AG5 A/S Post:1304 By:København K Web:www.ag5.dk Mail:info@ag5.dk
Virk:AI A/S Post:1432 By:København K Web:www.ai.dk Mail:ai@ai.dk
Virk:Aim-Byliv Post:2000 By:Frederiksberg Web:www.aim-byliv.dk Mail:asal@aim-byliv.dk
Virk:Aj Arkitekten v/ Jan Ravn Post:8920 By:Randers NV Web:www.ajark.dk Mail:jr@ajark.dk
Virk:AK83 Arkitekter A/S Post:2635 By:Ishøj Web:www.ak83.dk Mail:ak83@ak83.dk
Virk:Albjerg & Buchardt Arkitekter ApS Post:1159 By:København K Web:www.abarkitekter.dk Mail:nanna@abarkitekter.dk
Virk:Alex Poulsen Arkitekter A/S Post:2200 By:København N Web:www.alexpoulsen.dk Mail:info@alexpoulsen.dk
Virk:Alex Rosendal`s Tegnestue Post:2100 By:København Ø Web:www.ar-tegnestue.dk Mail:alex.rosendal@mail.tele.dk
Virk:AMAS ARKITEKTER Post:2830 By:Virum Web:amasark.dk Mail:amasark@gmail.com
Virk:Anders Barslund Post:2830 By:Virum Web:andersbarslund.com Mail:hello@andersbarslund.com
Virk:Anders Brix arkitekt maa mdd professor Post:2800 By:Kongens Lyngby Web:www.andersbrix.dk Mail:ab@andersbrix.dk
Virk:Anders Jørgensen Arkitekter A/S Post:1169 By:København K Web:www.ajas.eu Mail:anders@ajas.eu
Virk:Andersen & Sigurdsson Arkitekter Post:1850 By:Frederiksberg C Web:www.a-s.dk Mail:halli@a-s.dk
Virk:Anette Meldgaard arkitekt maa Post:2800 By:Kongens Lyngby Web:www.anettemeldgaard.dk Mail:ama@anettemeldgaard.dk
Virk:Animulas Post:8220 By:Brabrand Web:animulas.com Mail:concierge@animulas.com
Virk:Anna Mette Exner Arkitektur ApS Post:8220 By:Brabrand Web:www.exnerarkitektur.dk Mail:am@exnerarkitektur.dk
Virk:Anne Stausholm Landskabsarkitekter Post:4000 By:Roskilde Web:www.annestausholm.dk Mail:afs@annestausholm.dk
Virk:aNNeKS ApS Post:4200 By:Slagelse Web:www.anneks.org Mail:mso@anneks.org
Virk:ANNOARK ApS Post:3660 By:Stenløse Web:www.annoark.dk Mail:anmo@annoark.dk
Virk:ANS Arkitektfirma Post:8643 By:Ans By Web:www.ansarkitektfirma.dk Mail:ans-arkitektfirma@post.tele.dk
Virk:AQDO, Anne Qvist Design Office Post:8000 By:Aarhus C Web:www.aqdo.dk Mail:aq@aqdo.dk
Virk:Ar-Kon ApS Post:8380 By:Trige Web:www.ar-kon.dk Mail:post@ar-kon.dk
Virk:arch wiberg Post:3050 By:Humlebæk Web:archwiberg.dk Mail:pw@archwiberg.dk
Virk:Archifield Arkitekterne ApS Post:5600 By:Faaborg Web:www.archifield.dk Mail:info@archifield.dk
Virk:Archinet KS Post:8700 By:Horsens Web: Mail:archinet@archinet.dk
Virk:Architect Mads Max Ibenfeldt Post:3150 By:Hellebæk Web:madsibenfeldt.com Mail:madsmaxibenfeldt@gmail.com
Virk:Archtrojborg Post:8320 By:Mårslet Web:arch-trojborg.dk Mail:archtrojborg@gmail.com
Virk:ArcHus Arkitektfirma ApS Post:8560 By:Kolind Web:www.new-world.dk Mail:mail@new-world.dk
Virk:ARCnordic A/S Post:3400 By:Hillerød Web:www.arcnordic.dk Mail:mail@arcnordic.dk
Virk:Arcvision ApS Post:8660 By:Skanderborg Web:www.arcvision.dk Mail:britta@arcvision.dk
Virk:Arde ApS Post:7400 By:Herning Web:www.arde.dk Mail:mail@arde.dk
Virk:Ardess ApS Post:8000 By:Aarhus C Web:www.ardess.dk Mail:ps@ardess.dk
Virk:Arends Arkitekter IVS Post:2820 By:Gentofte Web:www.arends.dk Mail:pa@arends.dk
Virk:ARK+ Post:7100 By:Vejle Web:www.ark-plus.dk Mail:arkplus.nordic@gmail.com
Virk:Arkikon ApS Post:8500 By:Grenaa Web:www.arkikon.dk Mail:info@arkikon.dk
Virk:Arkimentor ApS Post:6040 By:Egtved Web:www.arkimentor.dk Mail:hsn@arkimentor.dk
Virk:Arkiplus Post:4180 By:Sorø Web:www.arkiplus.dk Mail:info@arkiplus.dk
Virk:Arkitekt Bjarne Korsgaard Post:2830 By:Virum Web: Mail:Bjarne.Korsgaard@gmail.com
Virk:arkitekt Daniel Nielsen Post:2000 By:Frederiksberg Web:www.arkitektdn.dk Mail:daniel@arkitektdn.dk
Virk:Arkitekt Esben Colding Broe Post:7700 By:Thisted Web: Mail:esbenark@gmail.com
Virk:Arkitekt Jarl ApS Post:7100 By:Vejle Web: Mail:arkitektjarl@outlook.dk
Virk:Arkitekt Jesper Brask ApS Post:3400 By:Hillerød Web:brask-leonhardt.dk Mail:jb@brask-leonhardt.dk
Virk:Arkitekt Kristine Jensens Tegnestue Post:8000 By:Aarhus C Web:www.kristinejensen.dk Mail:kj@kristinejensen.dk
Virk:Arkitekt Lars Remfeldt ApS Post:2791 By:Dragør Web: Mail:remfeldt@mail.tele.dk
Virk:Arkitekt Lise Juel ApS Post:3100 By:Hornbæk Web:www.lisejuel.dk Mail:lj@lisejuel.dk
Virk:Arkitekt MAA Anker Ravn Knudsen Post:6630 By:Rødding Web:www.ankerravnknudsen.dk Mail:tegnestue@ankerravnknudsen.dk
Virk:Arkitekt MAA Birthe Just Post:2820 By:Gentofte Web:www.bj-ark.dk Mail:mail@bj-ark.dk
Virk:Arkitekt MAA Boe Fischer Post:5230 By:Odense M Web:www.boefischer.dk Mail:arkboe@gmail.com
Virk:Arkitekt MAA Christoffer Storm Post:2610 By:Rødovre Web: Mail:cstorm@mail.dk
Virk:Arkitekt MAA Finn Strabo Post:3150 By:Hellebæk Web:www.strabo.dk Mail:strabo@mail.tele.dk
Virk:Arkitekt MAA Jan Harboe Post:1455 By:København K Web:www.janharboe.dk Mail:janharboe@janharboe.dk
Virk:Arkitekt MAA Jens Høg Post:4621 By:Gadstrup Web: Mail:jenshogtegnestue@gmail.com
Virk:Arkitekt MAA Jens Lind Post:2100 By:København Ø Web:www.jens-lind.dk Mail:jens@jenslind.dk
Virk:Arkitekt MAA Jens Stensgaard Post:8660 By:Skanderborg Web: Mail:jens@stensgaard.dk
Virk:Arkitekt MAA John Kronborg Christensen Post:6430 By:Nordborg Web: Mail:johnkron@post7.tele.dk
Virk:Arkitekt MAA Keld Wohlert Post:2680 By:Solrød Strand Web: Mail:vw@tegnestuen-wohlert.dk
Virk:Arkitekt MAA Knud Erik Møller Post:9800 By:Hjørring Web:www.kem-arkitekter.dk Mail:kem@kem-arkitekter.dk
Virk:Arkitekt MAA Mathilde Petri Post:2830 By:Virum Web: Mail:mp@mathildepetri.dk
Virk:Arkitekt MAA Morten Kjelstrup Post:1054 By:København K Web: Mail:mk@morten-kjelstrup.dk
Virk:Arkitekt MAA Niels Vestergaard Post:8960 By:Randers SØ Web: Mail:nv.tegnestue@mail.dk
Virk:Arkitekt maa Pierre Devriel Post:4500 By:Nykøbing Sj Web:www.tegnestuen-nordkyst.com Mail:pierred@live.dk
Virk:Arkitekt MAA Steffen M.Søndergaards Tegnestue ApS Post:6600 By:Vejen Web: Mail:SMS.ARK@HOTMAIL.COM
Virk:Arkitekt maa Steffen Søby aps Post:5700 By:Svendborg Web:www.soeby.dk Mail:steffen@soeby.dk
Virk:Arkitekt MAA Tom Sjørup Post:3670 By:Veksø Sjælland Web: Mail:tomstegnestue@outlook.dk
Virk:Arkitekt MAA Torben Baltsen Post:2720 By:Vanløse Web:www.torbenbaltsen.dk Mail:arkitekt@torbenbaltsen.dk
Virk:Arkitekt MAA Tummas Niclasen Post:2830 By:Virum Web:www.niclasen.eu Mail:arkitekt@niclasen.eu
Virk:Arkitekt Michael Kornbeck Post:1432 By:København K Web:www.kornbeckbonde.dk Mail:mk@kornbeckbonde.dk
Virk:Arkitekt Stefan Vesti Brorsen Post:2300 By:København S Web:asvb.dk Mail:s@asvb.dk
Virk:arkitekt thomas riis aps Post:3905 By:Nuussuaq Web: Mail:thomas@riis.gl
Virk:Arkitekt Thomas Thomsen DanskeArk Post:7000 By:Fredericia Web:www.tt-arkitekt.dk Mail:birger@tt-arkitekt.dk
Virk:Arkitektanpartsselskabet Ole Fabricius Post:6760 By:Ribe Web:www.ole-fabricius.dk Mail:arkitekt@ole-fabricius.dk
Virk:Arkitekter Syd ApS Post:6270 By:Tønder Web:www.arkitektersyd.dk Mail:hc@arkitektersyd.dk
Virk:Arkitekterne Bahn v/Erik Bahn Post:4070 By:Kirke Hyllinge Web:www.arkitekterne-bahn.dk Mail:ark.bahn@mail.tele.dk
Virk:Arkitekterne Bahn v/Leif Bahn Post:4300 By:Holbæk Web: Mail:lbahn.ark@mail.tele.dk
Virk:Arkitekterne Fuglehuset Post:4320 By:Lejre Web: Mail:hanne@engvang.dk
Virk:Arkitekterne Holst v/Michael Holst Post:1202 By:København K Web: Mail:mh@arkitekterne-holst.dk
Virk:Arkitekterne KØGE A/S Post:4600 By:Køge Web:www.arkk.dk Mail:gc@arkk.dk
Virk:Arkitekterne Vejen A/S Post:6100 By:Haderslev Web:www.arkitekternevejen.dk Mail:dion@arkitekternevejen.dk
Virk:Arkitektfirma A/S Hune & Elkjær Post:8000 By:Aarhus C Web:www.h-e.dk Mail:ark@h-e.dk
Virk:ARKITEKTFIRMA BYDER ApS Post:2820 By:Gentofte Web:www.byder.dk Mail:post@byder.dk
Virk:Arkitektfirma Christen Justesen A/S Post:9990 By:Skagen Web:www.christenjustesen.dk Mail:arkitekt@christenjustesen.dk
Virk:Arkitektfirma Claus Jensen ApS Post:8000 By:Aarhus C Web:www.cj-arkitekter.dk Mail:claus@cj-arkitekter.dk
Virk:Arkitektfirma Knud Erik Holst MAA / DA Post:4200 By:Slagelse Web:www.arkitekt-holst.dk Mail:maa@arkitekt-holst.dk

相关文章