Python / BeautifulSoup / Синтаксический - PullRequest
0 голосов
/ 05 июля 2018

У меня вопрос о разборе Beautifulsoup. Как вы можете видеть ниже, я хочу получить заголовок из тега 'li' (в белой рамке). Может кто-нибудь сказать мне, как это сделать? Вот мой код Спасибо.

from urllib.request import urlopen
from bs4 import BeautifulSoup

url = urlopen('https://movie.naver.com/movie/running/current.nhn')
soup = BeautifulSoup(url, 'html.parser')

data = soup.find('ul', {'class':'top_thumb_lst'})

print(data)

enter image description here

1 Ответ

0 голосов
/ 05 июля 2018

Вы имеете в виду, что хотите извлечь первый атрибут data-title? попробуйте data.find('li')['data-title']. Полный код:

from urllib.request import urlopen

from bs4 import BeautifulSoup

url = urlopen('https://movie.naver.com/movie/running/current.nhn')
soup = BeautifulSoup(url, 'html.parser')

data = soup.find('ul', {'class': 'top_thumb_lst'})

print(data.find_all('li')[0]['data-title'])

Результат

앤트맨과 와스프

ИЛИ, если вы хотите получить весь контент с атрибутом data-title, используйте вместо него data.find_all('li'). Полный код должен быть:

from urllib.request import urlopen

from bs4 import BeautifulSoup

url = urlopen('https://movie.naver.com/movie/running/current.nhn')
soup = BeautifulSoup(url, 'html.parser')

data = soup.find('ul', {'class': 'top_thumb_lst'})

for item in data.find_all('li'):
    print(item['data-title']) 

Это даст вам результат:

앤트맨과 와스프
마녀
변산
탐정: 리턴즈
허스토리
미드나잇 선
쥬라기 월드: 폴른 킹덤
오션스8
시카리오: 데이 오브 솔다도
오 루시!
바르다가 사랑한 얼굴들
개들의 섬
잉글랜드 이즈 마인
빅샤크: 매직체인지
여중생A
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...