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 2</a> example.com/events/1 ...some detail stuff I need example.com/events/2 ...some detail stuff I need 

3 Solutions collect form web for “Beautiful Soup, чтобы проанализировать URL-адрес, чтобы получить другие данные URL-адресов”

 import urllib2 from BeautifulSoup import BeautifulSoup page = urllib2.urlopen('http://yahoo.com').read() soup = BeautifulSoup(page) soup.prettify() for anchor in soup.findAll('a', href=True): print anchor['href'] 

Он предоставит вам список URL-адресов. Теперь вы можете перебирать эти URL-адреса и анализировать данные.

  • inner_div = soup.findAll("div", {"id": "y-shade"}) Это пример. Вы можете ознакомиться с учебниками BeautifulSoup.

Для следующей группы людей, которые сталкиваются с этим, BeautifulSoup был повышен до версии v4 на этом посту, поскольку v3 больше не обновляется.

 $ easy_install beautifulsoup4 $ pip install beautifulsoup4 

Использовать в Python …

 import bs4 as BeautifulSoup 

Используйте urllib2, чтобы получить страницу, затем используйте красивый суп, чтобы получить список ссылок, а также попробуйте scraperwiki.com

Редактировать:

Недавнее открытие: использование BeautifulSoup через lxml с

 from lxml.html.soupparser import fromstring 

намного лучше, чем просто BeautifulSoup. Это позволяет вам делать dom.cssselect («ваш селектор»), который является спасателем жизни. Просто убедитесь, что у вас установлена ​​хорошая версия BeautifulSoup. 3.2.1 работает.

 dom = fromstring('<html... ...') navigation_links = [a.get('href') for a in htm.cssselect('#navigation a')] 
  • Может ли BeautifulSoup анализировать xml, когда определенный тег является самозакрывающимся и не в то же время
  • Python: Как лучше всего разобрать простую грамматику?
  • Как анализировать «тело запроса» с использованием CGI python?
  • Обработка искаженных текстовых данных с помощью машинного обучения или НЛП
  • Разбор даты, которая может быть в нескольких форматах в python
  • Функция Pyparsing setParseAction не получает аргументов
  • Python синтаксический анализ XLS с изображениями
  • Использование BeautifulSoup для разбора строк, разделенных тэгами?
  • Каково намеренное использование раздела DEFAULT в конфигурационных файлах, используемых ConfigParser?
  • разбор URL-адреса в python с изменением его части
  • Doxygen C ++ comment string parser в python?
  • Python - лучший язык программирования в мире.