Извлечение неупорядоченного списка для определенного <div>: BeautifulSoup

Я очищаю эту веб-страницу, необходимую для моего приложения для Android. То, что я хотел бы сделать, – извлечь страны из атрибута href . Это то же самое, что и этот.

Вот мой код:

 from bs4 import BeautifulSoup import urllib2 import re html_page = urllib2.urlopen("http://www.howtocallabroad.com/a.html") soup = BeautifulSoup(html_page) li = soup.select("ul > li > a") for link in li: print link.get('href') 

Проблема, которую я получаю, заключается в том, что результат возвращает все теги, в том числе из других div s

 afghanistan/ albania/ algeria/ american-samoa/ andorra/ angola/ anguilla/ antigua/ argentina/ armenia/ aruba/ ascension/ australia/ austria/ azerbaijan/ codes.html # not needed nanp.html # not needed qa/ # not needed forums/ # not needed 

Я хотел бы узнать, какие функции / функции необходимы для этого. Я хочу только фильтровать href s только в <div id="content"> . Документы не содержат много информации.

Извините, это первый раз, когда я пишу python.

3 Solutions collect form web for “Извлечение неупорядоченного списка для определенного <div>: BeautifulSoup”

Используйте findAll() :

 >>> for i in soup.find('div',{'id':'content'}).findAll('a'): ... print i['href'] ... afghanistan/ albania/ algeria/ american-samoa/ andorra/ angola/ anguilla/ antigua/ argentina/ armenia/ aruba/ ascension/ australia/ austria/ azerbaijan/ 

soup.find('div',{'id':'content'}) Делает то, что он говорит. Он находит тег div, который имеет id content ( <div id="content"> будет сопоставлен).

.findAll() … находит все! 'a' используется как параметр для поиска всех тегов. Он возвращает список каждого тега.

Затем я просто распечатываю href каждого a-тега.

Пытаться

 li = soup.select("#content ul > li > a") 

вместо

 li = soup.select("ul > li > a") 

Сделайте это так:

 li = soup.select("#content ul > li > a") 

Например:

 li = soup.select("#[call india][1] ul > li > a") 
  • отправка формы django с использованием javascript
  • Как я могу использовать Django Simple Captcha в системе, которая не использует Django Forms
  • Разбирайте HTML через XPath
  • генератор python html
  • Удалить границу из таблицы html, созданной через pandas
  • Как понять этот необработанный HTML-код Yahoo! Финансы при извлечении данных с помощью Python?
  • Библиотека обнаружения кодирования в python
  • Как разобрать неверный HTML в python, используя стандартные библиотеки
  • Python: Как Pretty печатать html в файл
  • Удалите несколько страниц с помощью BeautifulSoup и Python
  • Можно ли обслуживать статическую html-страницу в корне проекта django?
  •  
    Interesting Posts for Van-Lav

    Расширенный срез, который начинается с начала последовательности с отрицательным шагом

    Изображение холста tkinter не отображается

    python ленивые переменные? или, отложенные дорогостоящие вычисления

    Можно ли сохранить разделы CDATA в BeautifulSoup?

    Попытка относительного импорта в непакете (после 2to3)

    Отправка некоторых ключей в неактивное окно с помощью python

    перечисление сетевых ресурсов с помощью python

    Преобразование списка чисел в диапазоны

    Есть ли более быстрый способ преобразования числа в имя?

    Выбор определенных ячеек таблицы в веб-драйвере Selenium (Python)

    Ошибка установки Tensorflow внутри Anaconda в Windows Machine

    Создание объекта из объекта базового класса в Python

    Тестирование рабочих процессов в Django

    Поиск и сортировка по словарю в Python

    Flask – Как я прочитал необработанное тело в запросе POST, когда типом контента является «application / x-www-form-urlencoded»,

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