Форум программистов, компьютерный форум, киберфорум
Python
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.93/27: Рейтинг темы: голосов - 27, средняя оценка - 4.93
0 / 0 / 0
Регистрация: 27.02.2011
Сообщений: 38

Проблемный парсер сайта

22.08.2011, 13:03. Показов 5860. Ответов 26
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Пмогите плизз, давно уже ломаю голову, хотел написать парсер сайта, чтобы выводил все, что находится между тэгами <table></table>я так понимаю необходимо использовать регулярные выражения, но у меня не получается...помогите.....ниже приведена самая функция, по которой происходит извлечение данных
Python
1
2
3
4
 f = urllib.request.urlopen("http://zd1.alt.mirsudrf.ru/modules.php?name=info_pages&rid=11").read()
    #print(f.info())
    r1=re.compile((r'<table>(.*?)</table>',  re.DOTALL).findall(f))
    print(f)
выдается ошибка
AttributeError: 'tuple' object has no attribute 'findall'
как быть и что делать????
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
22.08.2011, 13:03
Ответы с готовыми решениями:

Парсер картинок с сайта
Добрый день. Хочу написать парсер картинок с сайта (любого), но не знаю с чего начать., так как в python куча библиотек : не пойму...

Парсер сайта и ссылок с сайта
Добрый день. Подскажите, как реализовать парсер сайта, с которого парсятся все URL и в свою очередь, с них парсятся еще URL?(содержимое...

Парсер сайта
Подскажите как при помощи xpath выдернуть текстовое значение title вот кусок сайта для примера. Сейчас xpath выглядит вот так:...

26
4866 / 3288 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
25.08.2011, 03:10
Студворк — интернет-сервис помощи студентам
а табуляции ?
0
95 / 1 / 1
Регистрация: 01.08.2011
Сообщений: 35
25.08.2011, 03:15
Цитата Сообщение от accept Посмотреть сообщение
одни regexp'ы не подойдут, надо делать рекурсивный анализатор
А не подскажите в кратце, почему подобное нельзя на regexp-ах написать?
Я в том обсуждении только этот вывод запомнил, но все его читать не стал (очень много там всего было).

Добавлено через 1 минуту
Цитата Сообщение от accept Посмотреть сообщение
а табуляции ?
У меня были только пробелы в закрывающих тегах. Хотя, они все были гомогенные, и можно было просто поставить туда пробелы без всяких звездочек.

Добавлено через 2 минуты
Цитата Сообщение от accept Посмотреть сообщение
тег может содержать атрибуты
Просто вот этот код
Code
1
>?.*
можно заменить на
Code
1
.*
,
так как и в случае наличия там > сразу после tag, так и в случае отсутствия они все равно одинаково сработают.
0
4866 / 3288 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
25.08.2011, 03:19
HTML5
1
2
3
4
5
<html>
 
<b  >text</b    >
 
</html>
вот с табуляцией

Цитата Сообщение от bestol
Просто вот этот код
и оно будет рассматриваться, как часть содержимого тега
то есть не будет разделения на тег [ с атрибутами ] и содержимое тега
0
95 / 1 / 1
Регистрация: 01.08.2011
Сообщений: 35
25.08.2011, 03:20
Понятно. Я просто такие не встречал.

Вообще, лучше regexp лучше подбирать под каждую конкретную группу похожих страниц.
На Хабрахабре писали в комментариях, что не смотря на ограничения у regexp-ов по обработке страниц, все равно ими пользуются, т.к. они работают гораздо быстрее html-парсера, и если что-то нужно выдернуть из html, и понятно, как это место описать в regex-е, то лучше и быстрее им воспользоваться.
0
4866 / 3288 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
25.08.2011, 03:27
Цитата Сообщение от bestol
А не подскажите в кратце, почему подобное нельзя на regexp-ах написать?
потому что они плоские
https://www.cyberforum.ru/post1937747.html

Цитата Сообщение от bestol
Понятно. Я просто такие не встречал.
это можно посмотреть на w3c.org, что там может быть
я тоже не встречал, просто такой вариант firefox показывает нормально
модуль html поддерживает контроль за уровнями тегов, там не перепутаешь
0
0 / 0 / 0
Регистрация: 27.02.2011
Сообщений: 38
25.08.2011, 12:14  [ТС]
вижу моя тема вызвала дискуссии....подскажите пожалуйста, может будет проще реализовать тогда парсер с помощью lxml? если да, то вопрос как?а то я вообще не понимаю ничего......подскажите плиз.....
0
4866 / 3288 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
26.08.2011, 01:49
а html не подошёл ?
https://www.cyberforum.ru/post1935333.html
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
26.08.2011, 01:49
Помогаю со студенческими работами здесь

Парсер сайта
Здравствуйте, нужна помощь с парсером. Нужно спарсить https://bittrex.com/home/markets, допустим BITCOIN MARKETS всю таблицу(кроме двух...

Парсер сайта с Авторизацией
Здравствуйте. Пишу парсер и не понимаю что такое &quot;bfp: '83ed3ff8ef095a99cacb741910ce402d'&quot; в форме авторизации, для каждого браузера он...

Парсер закрытого сайта
Нужна помощь с кодом! # coding: utf-8 import requests from bs4 import BeautifulSoup from urllib.request import urlopen from...

Написать парсер для сайта
Здравствуйте. Начну с того, что изучаю пайтон около полтора месяца, успел прочитать Лутца (&quot;Изучаем пайтон&quot;), решить почти все...

Парсер сайта криптовалют на Питоне
Всем привет! Села за задание по учебной практике, суть которой написать парсер сайта криптовалют на языке Python с использованием библиотек...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
27
Ответ Создать тему
Новые блоги и статьи
Контроль уникальности заводского номера - вариант №2
Maks 24.03.2026
В отличие от предыдущего варианта добавлено прерывание циклов, также добавлены новые переменные для сохранения контекста ошибки перед прерыванием цикла: Процедура ПередЗаписью(Отказ, РежимЗаписи,. . .
SDL3 для Desktop (MinGW): Вывод текста со шрифтом TTF с помощью библиотеки SDL3_ttf на Си и C++
8Observer8 24.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-text-sdl3-c. zip finish-text-sdl3-cpp. zip
Жизнь в неопределённости
kumehtar 23.03.2026
Жизнь — это постоянное существование в неопределённости. Например, даже если у тебя есть список дел, невозможно дойти до точки, где всё окончательно завершено и больше ничего не осталось. В принципе,. . .
Модель здравоСохранения: работники работают быстрее после её введения.
anaschu 23.03.2026
geJalZw1fLo Корпорация до введения программа здравоохранения имела много невыполненных работниками заданий, после введения программы количество заданий выросло. Но на выплатах по больничным это. . .
Контроль уникальности заводского номера - вариант №1
Maks 23.03.2026
Алгоритм контроля уникальности заводского (или серийного) номера на примере документа выдачи шин для спецтехники с табличной частью. Данные берутся из регистра сведений, по которому настроено. . .
Хочу заставить корпорации вкладываться в здоровье сотрудников: делаю мат модель здравосохранения
anaschu 22.03.2026
e7EYtONaj8Y Z4Tv2zpXVVo https:/ / github. com/ shumilovas/ med2. git
Программный отбор элементов справочника по группе
Maks 22.03.2026
Установка программного отбора элементов справочника "Номенклатура" из модуля формы документа. В качестве фильтра для отбора справочника служит группа номенклатуры. Отбор по наименованию группы. . .
Как я обхитрил таблицу Word
Alexander-7 21.03.2026
Когда мигает курсор у внешнего края таблицы, и нам надо перейти на новую строку, а при нажатии Enter создается новый ряд таблицы с ячейками, то мы вместо нервных нажатий Энтеров мы пишем любые буквы. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru