2016-05-07 2 views
1

Я пытаюсь извлечь некоторые данные из WhoScored.com.Не удается создать суп из Selenium page_source?

Я использую селен для получения источника страницы, а затем BeautifulSoup для навигации по DOM, но ничего не могу получить от него.

код ниже:

#Importing the Libraries 
from selenium import webdriver 
from bs4 import BeautifulSoup #For scraping 

#Open the Home Page of WhoScored.com 

driver =webdriver.Firefox() 

driver.get('https://www.whoscored.com/') 

main_soup=BeautifulSoup(driver.page_source) 

#print main_soup 

result_tags=main_soup.select(".detailed-tournaments") 

print result_tags 

Я получаю result_tags как "[]". Не могу понять, что происходит не так. Я все еще новичок в Python. Пожалуйста помоги.

+0

Я не могу воспроизвести вашу проблему. Я тестировал ваш код, и он отлично работает. –

+0

@BillalBEGUERADJ Вы можете вставить отрывок из результата здесь? –

+0

Это длинный результат. Подождите минуту, я буду копировать/проделывать его где-то в Интернете и давать вам ссылку –

ответ

1

Кажется, что это случай сломанного анализатора. Не удалось получить много деталей, но ниже код работает:

main_soup=BeautifulSoup(driver.page_source,'html.parser') 

Я использую: Python 2.7.2 BeautifulSoup 4.4.1 Селен Версия: 2.53.1

+0

Итак, вы, наконец, обновили версию своей BS? –

+1

Да. Но проблема - это что-то с lxml или парсером по умолчанию. Работает только HTML.parser. –

+0

lxml отлично работает для меня с помощью Phantoms с неявным ожиданием, чтобы убедиться, что контент визуализирован. –

Смежные вопросы