Tag: beautifulsoup

Преобразование таблицы HTML в JSON

Я пытаюсь преобразовать таблицу, которую я извлек через BeautifulSoup в JSON. Пока мне удалось выделить все строки, хотя я не уверен, как работать с данными здесь. Любые советы были бы очень оценены. [<tr><td><strong>Balance</strong></td><td><strong>$18.30</strong></td></tr>, <tr><td>Card name</td><td>Name</td></tr>, <tr><td>Account holder</td><td>NAME</td></tr>, <tr><td>Card number</td><td>1234</td></tr>, <tr><td>Status</td><td>Active</td></tr>] (Линия разрывает мой для удобочитаемости) Это была моя попытка: result = [] allrows = table.tbody.findAll('tr') […]

Ускорение прекрасного

Я запускаю скребок этого веб-сайта курса, и мне интересно, есть ли более быстрый способ соскрести страницу, как только я ее положил в beautifulsoup. Это занимает больше времени, чем я ожидал. Советы? from selenium import webdriver from selenium.webdriver.common.keys import Keys from selenium.webdriver.support.ui import Select from selenium.webdriver.support import expected_conditions as EC from bs4 import BeautifulSoup driver = […]

Только извлечение текста из этого элемента, а не его детей

Я хочу извлечь только текст из самого верхнего элемента моего супа; однако soup.text также предоставляет текст всех дочерних элементов: у меня есть import BeautifulSoup soup=BeautifulSoup.BeautifulSoup('<html>yes<b>no</b></html>') print soup.text Результатом этого является yesno . Я хочу просто «да». Каков наилучший способ достичь этого? Edit : Я также хочу, чтобы yes выводился при разборе ' <html><b>no</b>yes</html> '.

BeautifulSoup и lxml.html – что выбрать?

Я работаю над проектом, который будет включать анализ HTML. После поиска я нашел два возможных варианта: BeautifulSoup и lxml.html Есть ли какая-то причина предпочитать одну над другой? Я использовал lxml для XML некоторое время назад, и я чувствую, что буду с ним более комфортно, однако BeautifulSoup кажется очень распространенным. Я знаю, что должен использовать тот, […]

Использование BeautifulSoup для поиска html для строки

Я использую BeautifulSoup для поиска введенных пользователем строк на определенной странице. Например, я хочу посмотреть, находится ли строка «Python» на странице: http://python.org Когда я использовал: find_string = soup.body.findAll(text='Python') find_string возвращен [] Но когда я использовал: find_string = soup.body.findAll(text=re.compile('Python'), limit=1) find_string возвратил [u'Python Jobs'] как ожидалось В чем разница между этими двумя утверждениями, которые заставляют второй […]

Кодировка HTML и анализ lxml

Я пытаюсь, наконец, решить некоторые проблемы с кодировкой, возникающие при попытке очистить HTML с помощью lxml. Вот три примера HTML-документов, с которыми я столкнулся: 1. <!DOCTYPE html> <html lang='en'> <head> <title>Unicode Chars: 은 —'</title> <meta charset='utf-8'> </head> <body></body> </html> 2. <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ko-KR" lang="ko-KR"> <head> <title>Unicode Chars: 은 —'</title> <meta http-equiv="content-type" content="text/html; charset=utf-8" […]

bs4.FeatureNotFound: Не удалось найти конструктор дерева с запрошенными функциями: lxml. Вам нужно установить библиотеку парсера?

… soup = BeautifulSoup(html, "lxml") File "/Library/Python/2.7/site-packages/bs4/__init__.py", line 152, in __init__ % ",".join(features)) bs4.FeatureNotFound: Couldn't find a tree builder with the features you requested: lxml. Do you need to install a parser library? Вышеуказанные выходы на моем терминале. Я нахожусь в Mac OS 10.7.x. У меня есть Python 2.7.1 и следуйте этому руководству, чтобы получить […]

Beautiful Soup, чтобы проанализировать URL-адрес, чтобы получить другие данные URL-адресов

Мне нужно разобрать URL-адрес, чтобы получить список URL-адресов, которые ссылаются на страницу подробностей. Затем с этой страницы мне нужно получить все детали с этой страницы. Мне нужно сделать это так, потому что URL-адрес подробной страницы не будет регулярно увеличиваться и изменяется, но страница списка событий остается неизменной. В основном: example.com/events/ <a href="http://example.com/events/1">Event 1</a> <a href="http://example.com/events/2">Event […]

Скребок экрана: обойти «Ошибка HTTP 403: запрос, запрещенный robots.txt»

Есть ли способ обойти следующее? httperror_seek_wrapper: HTTP Error 403: request disallowed by robots.txt Единственный способ связаться с владельцем сайта (barnesandnoble.com). Я создаю сайт, который принесет им больше продаж, а не уверен, почему они откажут доступ на определенной глубине. Я использую mechanize и BeautifulSoup на Python2.6. надеясь на обход

Красивый суп: объект «ResultSet» не имеет атрибута «find_all»?

Я пытаюсь очистить простой стол с помощью Beautiful Soup. Вот мой код: import requests from bs4 import BeautifulSoup url = 'https://gist.githubusercontent.com/anonymous/c8eedd8bf41098a8940b/raw/c7e01a76d753f6e8700b54821e26ee5dde3199ab/gistfile1.txt' r = requests.get(url) soup = BeautifulSoup(r.text) table = soup.find_all(class_='dataframe') first_name = [] last_name = [] age = [] preTestScore = [] postTestScore = [] for row in table.find_all('tr'): col = table.find_all('td') column_1 = col[0].string.strip() […]

Python - лучший язык программирования в мире.