Im пытается разобрать список названий видеоигр с торгового сайта. однако, поскольку список элементов хранится внутри тега.Использование SoupStrainer для синтаксического разбора
This раздел документации предположительно объясняет, как анализировать только часть документа, но я не могу его обработать. мой код:
from BeautifulSoup import BeautifulSoup
import urllib
import re
url = "Some Shopping Site"
html = urllib.urlopen(url).read()
soup = BeautifulSoup(html)
for a in soup.findAll('a',{'title':re.compile('.+') }):
print a.string
В настоящее время печатается строка внутри любого тега, у которого нет пустой ссылки на название. но он также притягивает предметы в боковой панели, которые являются «специальными». если я могу только взять список продуктов div, я убью 2 птицы одним камнем.
Большое спасибо.
пробовал, но он дал эту ошибку: Traceback (самый последний вызов последнего): Файл "~/start.py", строки 11, в для в product.findAll ('а', { 'title': re.compile ('. +')}): AttributeError: объект ResultSet не имеет атрибута 'findAll' –
Scraper
Попробуйте вызвать 'soup.find' вместо' soup.findAll'. – dusan
Не его давая мне это, Traceback (последний последний звонок): Файл «~/src/start.py», строка 13, в для a в product.findAll ('a', {'title': re .compile ('. +')}): AttributeError: объект «NoneType» не имеет атрибута «findAll» –
Scraper