2015-06-18 2 views
0

У меня есть часть кода, работающая на сервере (Ubuntu 14.04.2 LTS) и ноутбук (Ubuntu 15.04), что дает разные результаты. Я строю суп, используя тот же HTML-файл (скопированный это сам на сервер)BeautifulSoup дает разные результаты на сервере и ноутбуке

temp = open('temp.html', 'r') 
soup = bs4.BeautifulSoup(temp.read()) 
table = soup.find('table') 
if not table: 
    return [] 
rows = table.find_all('tr') 
print len(rows) 

Сервер печатает: 2 в то время как он локально печатает: 7

Дополнительная информация:

Сервер:

  • Python 2.7.6
  • beautifulsoup4 4.3.2
  • пип 7.0.3

Местно:

  • Python 2.7.9
  • beautifulsoup4 4.3.2
  • пип 1.5.6

Что мне не хватает? Что еще нужно искать?

+1

У вас есть 'lxml', установленный на одном, а не на другом? Использует ли 'bs4.BeautifulSoup (temp, 'html.parser')' номера? –

+0

@MartijnPieters Спасибо, что объясняет проблему, у меня не было lxml на сервере. – rGun

ответ

0

На моем сервере не было установлен lxml, тогда как lxml 3.4.4 был установлен локально. Установка на сервере решена проблема

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