Не могу получить все линки матчей онлайн из href, ограничивает 15 ссылками
import requests
from bs4 import BeautifulSoup
url = 'https://1xstavka.ru/live/Football/'
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.121 Safari/537.36'
}
all_hrefs = [] # Тут я буду хранить наши хрефы!
# Загружаю страницу
response = requests.get(url, headers = headers)
html = response.content
soup = BeautifulSoup(html, 'html.parser')
# Забираю себе хрефы и очищаем их
hrefs = soup.findAll('div', attrs={'class': "c-events__item c-events__item_col"})
clean_hrefs = [item.a.attrs['href'] for item in hrefs]
all_hrefs.extend(clean_hrefs)
print('Колличество Матчей =', len(all_hrefs))
print('\nhttps://1xstavka.ru/'.join(all_hrefs))
#дерево
with open('test.html', 'w' , encoding='UTF-8') as output_file:
output_file.write(response.text)
Ответы (1 шт):
Автор решения: RomanR
→ Ссылка
Сегодня уже был подобный вопрос. Ошибка 'NoneType' object has no attribute 'text' в парсере на python
Данные подгружает скрипт. Вот этот код загрузит страницу, подождет 5 сек, пока сработают скрипты и потом сохраняет страницу. Потом можно распарсить супом. 50 ссылок выдает.
from bs4 import BeautifulSoup
import time
from selenium import webdriver
import csv
# в этой части работает selenium
browser = webdriver.Chrome()
browser.get('https://1xstavka.ru/live/Football/')
time.sleep(5)
main_page = browser.page_source
soup = BeautifulSoup(main_page, "html.parser")
browser.close()
all_hrefs = []
hrefs = soup.findAll('div', attrs={'class': "c-events__item c-events__item_col"})
clean_hrefs = [item.a.attrs['href'] for item in hrefs]
all_hrefs.extend(clean_hrefs)
print('Колличество Матчей =', len(all_hrefs))
print('\nhttps://1xstavka.ru/'.join(all_hrefs))
all_hrefs = []
hrefs = soup.findAll('div', attrs={'class': "c-events__item c-events__item_col"})
clean_hrefs = [item.a.attrs['href'] for item in hrefs]
all_hrefs.extend(clean_hrefs)
print('Колличество Матчей =', len(all_hrefs))
print('\nhttps://1xstavka.ru/'.join(all_hrefs))
Вот тут можно скачать подходящий chrome driver.https://chromedriver.chromium.org/downloads Можно и другие использовать, firefox например.