Как мне разделить результаты webscrape с помощью тега класса?

#python #web-scraping

#python #веб-очистка

Вопрос:

Я разрабатываю webscraper для таблицы найденных » rel=»nofollow noreferrer»>данных https://web.columbus.org/Accounting ,-Подготовка к налогообложению, -Бухгалтерские услуги> . Каждая бизнес-запись разделяется тегом

            <div class="ListingResults_All_ENTRYTITLELEFT">
 

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

     businessPage=str(businessInfo).split("ListingResults_All_ENTRYTITLELEFT")
          input(print(f"bus page: {businessPage}"))
          for i in businessPage:
                 input(print(f"{i} :i"))
 

businessInfo — это проанализированные данные со страницы, и я нахожу их, используя приведенный ниже код:

         page=requests.get(https://web.columbus.org/Accounting,-Tax-Preparation,-Bookkeeping-Services)
        soup=BeautifulSoup(page.content,'html.parser')
        businessInfo=soup.find('div', {"class":"ListingResults_All"})
 

Как мне переписать свой код, чтобы перебирать каждый уникальный бизнес-листинг, чтобы я мог очищать их данные по одному за раз? Я не прикрепил вывод из-за его размера, но могу, если необходимо.

Комментарии:

1. Ссылка на код для очистки web.columbus.org /…

Ответ №1:

Попробуй это.

 from simplified_scrapy import Spider, SimplifiedDoc, utils, SimplifiedMain, req

html = req.get('https://web.columbus.org/Accounting,-Tax-Preparation,-Bookkeeping-Services')
doc = SimplifiedDoc(html)
startDivs = doc.getElements('div', attr='class', value='ListingResults_All_ENTRYTITLELEFTBOX')
for start in startDivs:
    businessPage = doc.getElement('div',start=start._end)
    print (businessPage.text)
 

Результат:

 _ 8800 Lyra Drive, Suite 450Columbus, OH 43240 (614) 885-2583 Member Since: 2014
_ 180 East Broad Street, Suite 1400Columbus, OH 43215 3611(614) 221-1000 Member Since: 1960
_ 230 West Street, Suite 700Columbus, OH 43215 (614) 221-1120 Member Since: 1981
...
 

Комментарии:

1. спасибо за вашу помощь. Однако я использую VS code и испытываю трудности с импортом simplified_scrapy. Есть ли альтернативный импорт, который я мог бы использовать, или другой способ очистки данных? Спасибо.

2. @NickPicciano Я тоже использую VS code. Этот пакет необходимо установить в первую очередь. pip установка simplified_scrapy