Удалите ссылки из двух таблиц на одной странице

#python #selenium-webdriver #web-scraping

Вопрос:

Я бы очистил ссылки на матчи, нажав кнопку на странице «Показать все матчи», чтобы загрузить все матчи с этого веб-сайта url = https://www.soccerstats.com/ .

Я хочу получить ссылку на статистику введите описание изображения здесь

Я создаю эту функцию

 def get_matches(url):  options = Options()  options.add_argument('--blink-settings=imagesEnabled=false')  options.headless = True  options.add_argument("--start-maximised")  driver = webdriver.Chrome(executable_path=path options= options)   # Open the link  driver.get(url)  sleep(10)  driver.refresh()    driver.find_element_by_tag_name('body').send_keys(Keys.END)  more_matches = WebDriverWait(driver, 2).until(EC.visibility_of_element_located((By.XPATH, '//*[@id="content"]/div[3]/div[2]/table/tbody/tr[2]/td/table[4]/tbody/tr/td[2]/button')))  driver.execute_script("arguments[0].click();", more_matches)    wrap_ = driver.find_element_by_id("btable")  trs = wrap_.find_elements_by_tag_name('tr')    _lst = list()    # Loop through and print all tr's   for tr in trs:  href = tr.get_attribute('href')  print(href)  

Но я получаю None в качестве вывода

Ответ №1:

Разве это не дает вам все ссылки на статистику?

 import requests from bs4 import BeautifulSoup  url = 'https://www.soccerstats.com/'  response = requests.get(url) soup = BeautifulSoup(response.text, 'html.parser')  a_tags = soup.find_all('a', href=True, text='stats') links = ['https://www.soccerstats.com/'   x['href'] for x in a_tags]  

Выход:

 print(links) ['https://www.soccerstats.com/latest.asp?league=iran', 'https://www.soccerstats.com/latest.asp?league=italy3', 'https://www.soccerstats.com/latest.asp?league=kosovo', 'https://www.soccerstats.com/latest.asp?league=serbia2', 'https://www.soccerstats.com/latest.asp?league=spain', 'https://www.soccerstats.com/pmatch.asp?league=spainamp;stats=147-3-19-2022', 'https://www.soccerstats.com/latest.asp?league=portugal', 'https://www.soccerstats.com/pmatch.asp?league=portugalamp;stats=107-4-12-2022', 'https://www.soccerstats.com/latest.asp?league=england2', 'https://www.soccerstats.com/pmatch.asp?league=england2amp;stats=511-9-15-2022', 'https://www.soccerstats.com/latest.asp?league=italy2', 'https://www.soccerstats.com/pmatch.asp?league=italy2amp;stats=149-9-17-2022', 'https://www.soccerstats.com/latest.asp?league=spain2', 'https://www.soccerstats.com/pmatch.asp?league=spain2amp;stats=197-2-7-2022', 'https://www.soccerstats.com/latest.asp?league=netherlands2', 'https://www.soccerstats.com/pmatch.asp?league=netherlands2amp;stats=195-10-18-2022', 'https://www.soccerstats.com/latest.asp?league=portugal2', 'https://www.soccerstats.com/pmatch.asp?league=portugal2amp;stats=108-9-13-2022', 'https://www.soccerstats.com/latest.asp?league=algeria2', 'https://www.soccerstats.com/pmatch.asp?league=algeria2amp;stats=94-30-8-2022', 'https://www.soccerstats.com/pmatch.asp?league=algeria2amp;stats=83-13-21-2022', 'https://www.soccerstats.com/pmatch.asp?league=algeria2amp;stats=88-10-17-2022', 'https://www.soccerstats.com/pmatch.asp?league=algeria2amp;stats=92-2-4-2022', 'https://www.soccerstats.com/pmatch.asp?league=algeria2amp;stats=86-14-24-2022', 'https://www.soccerstats.com/pmatch.asp?league=algeria2amp;stats=87-12-23-2022', 'https://www.soccerstats.com/pmatch.asp?league=algeria2amp;stats=89-25-3-2022', 'https://www.soccerstats.com/pmatch.asp?league=algeria2amp;stats=93-32-6-2022', 'https://www.soccerstats.com/pmatch.asp?league=algeria2amp;stats=95-28-7-2022', 'https://www.soccerstats.com/pmatch.asp?league=algeria2amp;stats=85-16-22-2022', 'https://www.soccerstats.com/pmatch.asp?league=algeria2amp;stats=96-26-1-2022', 'https://www.soccerstats.com/pmatch.asp?league=algeria2amp;stats=91-29-5-2022', 'https://www.soccerstats.com/pmatch.asp?league=algeria2amp;stats=84-18-20-2022', 'https://www.soccerstats.com/pmatch.asp?league=algeria2amp;stats=90-27-31-2022', 'https://www.soccerstats.com/pmatch.asp?league=algeria2amp;stats=82-11-15-2022', 'https://www.soccerstats.com/pmatch.asp?league=algeria2amp;stats=81-9-19-2022', 'https://www.soccerstats.com/latest.asp?league=argentina', 'https://www.soccerstats.com/pmatch.asp?league=argentinaamp;stats=187-1-10-2022', 'https://www.soccerstats.com/pmatch.asp?league=argentinaamp;stats=190-14-9-2022', 'https://www.soccerstats.com/latest.asp?league=armenia2', 'https://www.soccerstats.com/pmatch.asp?league=armenia2amp;stats=16-1-5-2022', 'https://www.soccerstats.com/latest.asp?league=azerbaijan', 'https://www.soccerstats.com/pmatch.asp?league=azerbaijanamp;stats=49-8-6-2022', 'https://www.soccerstats.com/latest.asp?league=brazil', 'https://www.soccerstats.com/pmatch.asp?league=brazilamp;stats=350-18-3-2021', 'https://www.soccerstats.com/latest.asp?league=bulgaria', 'https://www.soccerstats.com/pmatch.asp?league=bulgariaamp;stats=112-12-10-2022', 'https://www.soccerstats.com/latest.asp?league=chile3', 'https://www.soccerstats.com/pmatch.asp?league=chile3amp;stats=57-6-7-2021', 'https://www.soccerstats.com/latest.asp?league=china2', 'https://www.soccerstats.com/latest.asp?league=cyprus', 'https://www.soccerstats.com/pmatch.asp?league=cyprusamp;stats=94-10-11-2022', 'https://www.soccerstats.com/pmatch.asp?league=cyprusamp;stats=97-6-3-2022', 'https://www.soccerstats.com/latest.asp?league=denmark', 'https://www.soccerstats.com/pmatch.asp?league=denmarkamp;stats=101-5-1-2022', 'https://www.soccerstats.com/latest.asp?league=ecuador2', 'https://www.soccerstats.com/latest.asp?league=egypt4', 'https://www.soccerstats.com/pmatch.asp?league=egypt4amp;stats=12-6-15-2022', 'https://www.soccerstats.com/latest.asp?league=england12', 'https://www.soccerstats.com/pmatch.asp?league=england12amp;stats=108-19-1-2022', 'https://www.soccerstats.com/latest.asp?league=england15', 'https://www.soccerstats.com/pmatch.asp?league=england15amp;stats=90-2-8-2022', 'https://www.soccerstats.com/latest.asp?league=england16', 'https://www.soccerstats.com/pmatch.asp?league=england16amp;stats=85-6-8-2022', 'https://www.soccerstats.com/pmatch.asp?league=england16amp;stats=88-4-12-2022', 'https://www.soccerstats.com/pmatch.asp?league=england16amp;stats=89-7-14-2022', 'https://www.soccerstats.com/pmatch.asp?league=england16amp;stats=90-11-2-2022', 'https://www.soccerstats.com/latest.asp?league=england19', 'https://www.soccerstats.com/pmatch.asp?league=england19amp;stats=93-17-11-2022', 'https://www.soccerstats.com/latest.asp?league=georgia', 'https://www.soccerstats.com/latest.asp?league=germany3', 'https://www.soccerstats.com/pmatch.asp?league=germany3amp;stats=161-18-11-2022', 'https://www.soccerstats.com/latest.asp?league=germany4', 'https://www.soccerstats.com/pmatch.asp?league=germany4amp;stats=165-13-15-2022', 'https://www.soccerstats.com/latest.asp?league=germany20', 'https://www.soccerstats.com/pmatch.asp?league=germany20amp;stats=240-19-16-2022', 'https://www.soccerstats.com/latest.asp?league=hungary2', 'https://www.soccerstats.com/pmatch.asp?league=hungary2amp;stats=173-13-20-2022', 'https://www.soccerstats.com/latest.asp?league=india', 'https://www.soccerstats.com/h2h.asp?league=indiaamp;t1id=4amp;t2id=10amp;ly=2022', 'https://www.soccerstats.com/latest.asp?league=indonesia', 'https://www.soccerstats.com/pmatch.asp?league=indonesiaamp;stats=126-13-2-2021', 'https://www.soccerstats.com/latest.asp?league=iran', 'https://www.soccerstats.com/pmatch.asp?league=iranamp;stats=54-8-14-2022', 'https://www.soccerstats.com/pmatch.asp?league=iranamp;stats=52-11-13-2022', 'https://www.soccerstats.com/pmatch.asp?league=iranamp;stats=53-7-1-2022', 'https://www.soccerstats.com/pmatch.asp?league=iranamp;stats=55-16-6-2022', 'https://www.soccerstats.com/latest.asp?league=israel2', 'https://www.soccerstats.com/pmatch.asp?league=israel2amp;stats=92-1-6-2022', 'https://www.soccerstats.com/pmatch.asp?league=israel2amp;stats=89-11-14-2022', 'https://www.soccerstats.com/pmatch.asp?league=israel2amp;stats=91-12-16-2022', 'https://www.soccerstats.com/latest.asp?league=italy3', 'https://www.soccerstats.com/pmatch.asp?league=italy3amp;stats=131-18-15-2022', 'https://www.soccerstats.com/latest.asp?league=italy5', 'https://www.soccerstats.com/pmatch.asp?league=italy5amp;stats=136-14-17-2022', 'https://www.soccerstats.com/latest.asp?league=kosovo', 'https://www.soccerstats.com/pmatch.asp?league=kosovoamp;stats=76-1-6-2022', 'https://www.soccerstats.com/latest.asp?league=malta2', 'https://www.soccerstats.com/pmatch.asp?league=malta2amp;stats=79-16-3-2022', 'https://www.soccerstats.com/pmatch.asp?league=malta2amp;stats=80-22-5-2022', 'https://www.soccerstats.com/latest.asp?league=romania', 'https://www.soccerstats.com/pmatch.asp?league=romaniaamp;stats=133-7-12-2022', 'https://www.soccerstats.com/pmatch.asp?league=romaniaamp;stats=130-5-4-2022', 'https://www.soccerstats.com/latest.asp?league=russia', 'https://www.soccerstats.com/pmatch.asp?league=russiaamp;stats=126-14-8-2022', 'https://www.soccerstats.com/pmatch.asp?league=russiaamp;stats=125-6-5-2022', 'https://www.soccerstats.com/latest.asp?league=saudiarabia2', 'https://www.soccerstats.com/pmatch.asp?league=saudiarabia2amp;stats=71-8-12-2022', 'https://www.soccerstats.com/pmatch.asp?league=saudiarabia2amp;stats=72-9-15-2022', 'https://www.soccerstats.com/pmatch.asp?league=saudiarabia2amp;stats=73-20-2-2022', 'https://www.soccerstats.com/leagueview.asp?league=cup-scotland1', 'https://www.soccerstats.com/leagueview_team.asp?league=cup-scotland1amp;team1id=39amp;team2id=40amp;fmid=20', 'https://www.soccerstats.com/latest.asp?league=serbia', 'https://www.soccerstats.com/pmatch.asp?league=serbiaamp;stats=142-6-7-2022', 'https://www.soccerstats.com/pmatch.asp?league=serbiaamp;stats=136-4-11-2022', 'https://www.soccerstats.com/latest.asp?league=serbia2', 'https://www.soccerstats.com/pmatch.asp?league=serbia2amp;stats=160-12-14-2022', 'https://www.soccerstats.com/latest.asp?league=slovakia', 'https://www.soccerstats.com/pmatch.asp?league=slovakiaamp;stats=96-4-10-2022', 'https://www.soccerstats.com/latest.asp?league=sweden', 'https://www.soccerstats.com/pmatch.asp?league=swedenamp;stats=228-9-13-2021', 'https://www.soccerstats.com/pmatch.asp?league=swedenamp;stats=232-7-3-2021', 'https://www.soccerstats.com/pmatch.asp?league=swedenamp;stats=230-12-6-2021', 'https://www.soccerstats.com/latest.asp?league=turkey', 'https://www.soccerstats.com/pmatch.asp?league=turkeyamp;stats=139-12-14-2022', 'https://www.soccerstats.com/latest.asp?league=turkey2', 'https://www.soccerstats.com/pmatch.asp?league=turkey2amp;stats=126-9-16-2022', 'https://www.soccerstats.com/latest.asp?league=ukraine', 'https://www.soccerstats.com/pmatch.asp?league=ukraineamp;stats=126-12-11-2022', 'https://www.soccerstats.com/latest.asp?league=ukraine2', 'https://www.soccerstats.com/pmatch.asp?league=ukraine2amp;stats=155-10-16-2022', 'https://www.soccerstats.com/latest.asp?league=uruguay2', 'https://www.soccerstats.com/pmatch.asp?league=uruguay2amp;stats=108-5-2-2021', 'https://www.soccerstats.com/pmatch.asp?league=brazilamp;stats=351-11-13-2021', 'https://www.soccerstats.com/pmatch.asp?league=spainamp;stats=86-10-20-2022', 'https://www.soccerstats.com/pmatch.asp?league=franceamp;stats=157-10-15-2022', 'https://www.soccerstats.com/pmatch.asp?league=portugalamp;stats=109-6-1-2022', 'https://www.soccerstats.com/pmatch.asp?league=portugalamp;stats=116-10-13-2022', 'https://www.soccerstats.com/pmatch.asp?league=englandamp;stats=430-12-16-2022', 'https://www.soccerstats.com/pmatch.asp?league=englandamp;stats=429-18-7-2022', 'https://www.soccerstats.com/pmatch.asp?league=italyamp;stats=156-13-8-2022', 'https://www.soccerstats.com/pmatch.asp?league=italyamp;stats=157-15-3-2022', 'https://www.soccerstats.com/pmatch.asp?league=spainamp;stats=155-14-10-2022', 'https://www.soccerstats.com/pmatch.asp?league=germanyamp;stats=118-13-2-2022', 'https://www.soccerstats.com/pmatch.asp?league=franceamp;stats=162-12-10-2022', 'https://www.soccerstats.com/pmatch.asp?league=netherlandsamp;stats=128-6-15-2022', 'https://www.soccerstats.com/pmatch.asp?league=portugalamp;stats=110-8-4-2022', 'https://www.soccerstats.com/pmatch.asp?league=germanyamp;stats=131-12-10-2022', 'https://www.soccerstats.com/pmatch.asp?league=germanyamp;stats=127-2-15-2022']