BeautifulSoup «найти» вывод функции в .csv без тега <div>

Я очень новичок в изучении веб-страниц и пытаюсь понять, как использовать функцию поиска BeautifulSoup для вывода текста в файл .csv. Я не могу понять, как это сделать с помощью функции «Найти» BeautifulSoup, чтобы получить только текст.

Это веб-сайт: https://www.eventbrite.com/d/malaysia--kuala-lumpur--85675181/all-events/?page=1.

Что я изначально использовал:

event_location = container.find('div', class_ = 'card-text--truncated__one')

Это выводит в файл .csv с div class = "card-text - truncated__one" в начале и / div в конце местоположения.

То, что я придумал, бросило AttributeError: у объекта 'NoneType' нет атрибута 'text'

#get event location
event_location = container.find('div', {'class': 'card-text--truncated__one'}).text
location.append(event_location)

#prints information in Pandas DataFrame within terminal
event_list = pandas.DataFrame({
    'event': name,
    'date': date,
    'location': location
})
print(event_list)

#extracts information to .csv file
event_list.to_csv('event_data.csv', encoding = 'utf-8-sig')

Как бы я решил это?

Всего 1 ответ


Попробуйте следующий код. Это хранит все данные, такие как имя, дата и местоположение в кадре данных.

import pandas as pd
from bs4 import BeautifulSoup
import requests

res=requests.get("https://www.eventbrite.com/d/malaysia--kuala-lumpur--85675181/all-events/?page=1").text
soup=BeautifulSoup(res,'html.parser')
ldate=[]
lname=[]
llocation=[]
for item in soup.select(".search-event-card-wrapper"):
    ldate.append(item.find_next('div',class_='eds-media-card-content__primary-content').find_next('div').text)
    lname.append(item.find_next('div',class_='eds-is-hidden-accessible').text)
    llocation.append(item.find_next('div',class_='card-text--truncated__one').text)
df = pd.DataFrame({"Date":ldate,"Company_Name":lname,"Location":llocation})
print(df)
df.to_csv('event_data.csv', encoding = 'utf-8-sig')

Выходная консоль:

                                         Company_Name  ...                                           Location
0                             Viper Urban at KL Tower  ...  Menara Kuala Lumpur • Kuala Lumpur, Wilayah Pe...
1   Mega Career Fair & Post-Graduate Education Fai...  ...  KLCC Convention Centre • Kuala Lumpur, Kuala L...
2   Joey Yap's Feng Shui & Astrology 2021 (Kuala L...  ...  Kuala Lumpur • Kuala Lumpur, Federal Territory...
3   Traders Fair 2020 - Malaysia (Financial Educat...  ...  InterContinental Kuala Lumpur • Kuala Lumpur, ...
4   Joey Yap's Feng Shui & Astrology 2021 (Kuala L...  ...  Kuala Lumpur • Kuala Lumpur, Federal Territory...
5   Hands-On Money Making Mobile Apps Workshop - (...  ...  Trailblazer Success Centre • Kuala Lumpur, Kua...
6   WFF INTERNATIONAL BATTLE OF TITANS 2.0 PRO-AM ...  ...  Kuala Lumpur Convention Centre • Kuala Lumpur,...
7                                          MIVAS 2020  ...  Hall 1 Tun Razak, PWTC Kuala Lumpur • Kuala Lu...
8                 Wiki Finance EXPO Kuala Lumpur 2020  ...  吉隆坡希尔顿逸林酒店 • Kuala Lumpur, Wilayah Persekutuan...
9              Applecrumby™ Goodie Bag @ AEON MV 0420  ...  AEON Mid Valley Megamall • Kuala Lumpur, Wilay...
10                                    DisruptHRKL 5.0  ...  Fave Malaysia HQ • Jalan Kerinchi, Bangsar Sou...
11  Post Graduate Education Fair 2020 - Mid Valley KL  ...        Mid Valley Exhibition Centre • Kuala Lumpur
12                                        Conferences  ...  Kuala Lumpur Convention Centre • Kuala Lumpur,...
13  Malaysian International Food & Beverage (MIFB)...  ...  Kuala Lumpur Convention Centre • Kuala Lumpur,...
14   AWStartup Festival - Technology Acceleration Day  ...          Kuala Lumpur • Kuala Lumpur, Kuala Lumpur
15                                   THE FIT Malaysia  ...  Kuala Lumpur Convention Centre • Kuala Lumpur,...
16                      The Essential Kangen Workshop  ...  THE GARDENS THEATER, LEVEL 6, THE GARDENS MALL...
17                                IFN Asia Forum 2020  ...  Mandarin Oriental, Kuala Lumpur • Kuala Lumpur...
18                            NEXT4IR CONFERENCE 2020  ...  Connexion Conference & Event Centre - CCEC • K...
19                                         MyFoodTech  ...  Kuala Lumpur Convention Centre • Kuala Lumpur,...

[20 rows x 3 columns]

Снимок CSV-файла.

введите описание изображения здесь


Есть идеи?

10000