BeatifulSoup4 get_text все еще имеет javascript

Я пытаюсь удалить все html / javascript, используя bs4, однако он не избавляется от javascript. Я все еще вижу это там с текстом. Как я могу обойти это?

Я попытался использовать nltk который отлично работает, однако clean_html и clean_url будут удалены, перемещаясь вперед. Есть ли способ использовать супы get_text и получить тот же результат?

  • как получить содержимое javascript в python
  • Объект BeautifulSoup не рассохнет, вызывает интерпретатор для бесшумного сбоя
  • Как перебирать атрибуты HTML элемента Beautiful Soup?
  • Пропавшие без вести на результатах Beautiful Soup
  • Найти и щелкнуть элемент из частичного значения onclick
  • Очистить динамический веб-сайт
  • Я пробовал смотреть на другие страницы:

    BeautifulSoup get_text не разделяет все теги и JavaScript

    В настоящее время я использую устаревшие функции nltk.

    РЕДАКТИРОВАТЬ

    Вот пример:

     import urllib from bs4 import BeautifulSoup url = "http://www.cnn.com" html = urllib.urlopen(url).read() soup = BeautifulSoup(html) print soup.get_text() 

    Я все еще вижу для CNN следующее:

     $j(function() { "use strict"; if ( window.hasOwnProperty('safaripushLib') && window.safaripushLib.checkEnv() ) { var pushLib = window.safaripushLib, current = pushLib.currentPermissions(); if (current === "default") { pushLib.checkPermissions("helloClient", function() {}); } } }); /*globals MainLocalObj*/ $j(window).load(function () { 'use strict'; MainLocalObj.init(); }); 

    Как удалить js?

    Только другие варианты, которые я нашел:

    https://github.com/aaronsw/html2text

    Проблема с html2text заключается в том, что она действительно очень медленная время от времени, и создает заметное отставание, и это одна вещь, с которой nltk всегда был очень хорош.

  • Структура данных дерева NLTK, поиск узла, его родителя или детей
  • Как загрузить данные NLTK?
  • Импорт bs4 в Python 3.5
  • Не ставьте теги html, head и body автоматически, beautifulsoup
  • Извлечение значения атрибута с помощью beautifulsoup
  • Как изменить имя тега с помощью BeautifulSoup?
  • 2 Solutions collect form web for “BeatifulSoup4 get_text все еще имеет javascript”

    Отчасти частично Можно ли удалить теги сценариев с помощью BeautifulSoup?

     import urllib from bs4 import BeautifulSoup url = "http://www.cnn.com" html = urllib.urlopen(url).read() soup = BeautifulSoup(html) # kill all script and style elements for script in soup(["script", "style"]): script.extract() # rip it out # get text text = soup.get_text() # break into lines and remove leading and trailing space on each lines = (line.strip() for line in text.splitlines()) # break multi-headlines into a line each chunks = (phrase.strip() for line in lines for phrase in line.split(" ")) # drop blank lines text = '\n'.join(chunk for chunk in chunks if chunk) print(text) 

    Чтобы предотвратить ошибки кодирования в конце …

     import urllib from bs4 import BeautifulSoup url = url html = urllib.urlopen(url).read() soup = BeautifulSoup(html) # kill all script and style elements for script in soup(["script", "style"]): script.extract() # rip it out # get text text = soup.get_text() # break into lines and remove leading and trailing space on each lines = (line.strip() for line in text.splitlines()) # break multi-headlines into a line each chunks = (phrase.strip() for line in lines for phrase in line.split(" ")) # drop blank lines text = '\n'.join(chunk for chunk in chunks if chunk) print(text.encode('utf-8')) 
    Python - лучший язык программирования в мире.