Schleife in Schleife
Verfasst: Donnerstag 9. September 2021, 22:43
Hi Zusammen,
ich habe heute mi meinem esten Programm begonnen. Es soll ein Scraper werden.
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import pandas as pd
driver = webdriver.Chrome('C:/webdrivers/chromedriver.exe')
driver.get('https://www.oddsportal.com/matches/tennis/')
driver.maximize_window()
Tomorrow = driver.find_element_by_xpath('//div[@class="center spc"]/span/a[3]')
Tomorrow.click()
# Sort = driver.find_element_by_xpath('//li[@class="tab first"]/a[1]/span')
# Sort.click()
# Web Scraping
Spielort = driver.find_elements_by_xpath('//tr[@class="dark center"]/th[1]/a[2]')
Uhrzeit = driver.find_elements_by_xpath('//tr[@class="odd"]/td[1]')
for s in Spielort:
for u in Uhrzeit:
print(s.text + u.text)
Soweit funktioniert auch alles schonmal. Nur bekommen ich es nicht hin die gesammelten Daten richtig auszugeben.
In einer Tabelle stehen immer zuerst die Spielorte und darunter dann die einzelnen Spiele. Als Output möchte ich also haben
Ort xyz1 , Startzeit 1. Match
Ort xyz1 , Startzeit 2. Match
Ort xyz1 , Startzeit 3. Match
Ort xyz2 , Startzeit 1. Match
Ort xyz2 , Startzeit 2. Match
Ort xyz3 , Startzeit 1. Match
Ort xyz4 , Startzeit 1. Match
Ort xyz4 , Startzeit 2. Match
Ich weiss aus VBA das ich es irgendwie mit einer Schleife hinbekomme. Aber wie mache ich das in python.
Vielen Dank vorab für eure Hilfe
Dirk
P.S.: kann man in diesem Forum erledigte Artikel nicht beenden?
ich habe heute mi meinem esten Programm begonnen. Es soll ein Scraper werden.
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import pandas as pd
driver = webdriver.Chrome('C:/webdrivers/chromedriver.exe')
driver.get('https://www.oddsportal.com/matches/tennis/')
driver.maximize_window()
Tomorrow = driver.find_element_by_xpath('//div[@class="center spc"]/span/a[3]')
Tomorrow.click()
# Sort = driver.find_element_by_xpath('//li[@class="tab first"]/a[1]/span')
# Sort.click()
# Web Scraping
Spielort = driver.find_elements_by_xpath('//tr[@class="dark center"]/th[1]/a[2]')
Uhrzeit = driver.find_elements_by_xpath('//tr[@class="odd"]/td[1]')
for s in Spielort:
for u in Uhrzeit:
print(s.text + u.text)
Soweit funktioniert auch alles schonmal. Nur bekommen ich es nicht hin die gesammelten Daten richtig auszugeben.
In einer Tabelle stehen immer zuerst die Spielorte und darunter dann die einzelnen Spiele. Als Output möchte ich also haben
Ort xyz1 , Startzeit 1. Match
Ort xyz1 , Startzeit 2. Match
Ort xyz1 , Startzeit 3. Match
Ort xyz2 , Startzeit 1. Match
Ort xyz2 , Startzeit 2. Match
Ort xyz3 , Startzeit 1. Match
Ort xyz4 , Startzeit 1. Match
Ort xyz4 , Startzeit 2. Match
Ich weiss aus VBA das ich es irgendwie mit einer Schleife hinbekomme. Aber wie mache ich das in python.
Vielen Dank vorab für eure Hilfe
Dirk
P.S.: kann man in diesem Forum erledigte Artikel nicht beenden?