Как мне получить текст от div? - PullRequest
0 голосов
/ 07 июля 2019

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

Я смотрел учебные пособия, но ни один не работал.

import requests
from bs4 import BeautifulSoup

r = requests.get("http://www.rubyrealms.com/user/KOMKO190/")
content = r.content
soup = BeautifulSoup(content, "html.parser")
print(soup)

Как бы я получил DIVs и текст от div?

1 Ответ

1 голос
/ 07 июля 2019

Я проанализировал некоторые образцы элементов со страницы, с которых следует начать:

import requests
from bs4 import BeautifulSoup

r = requests.get("http://www.rubyrealms.com/user/KOMKO190/")
content = r.content
soup = BeautifulSoup(content, 'lxml')

name = soup.select_one('div.profile-title').text.strip()
about = soup.select_one('div.profile-about').text.strip()
achievements = [span['title'] for span in soup.select('div.achievements span[title]')]
stats = [div.text.strip() for div in soup.select('div.stats div')]

print('{: <20}{}'.format('Name:', name))
print('{: <20}{}'.format('About:', about))
print('{: <20}{}'.format('Achievements:', achievements))
print('{: <20}{}'.format('Stats:', stats))

Печать:

Name:               KOMKO190
About:              Hey! My name is KOMKO190, you maybe know me from the forums or discord. I am a programmer, I know a bit of JavaScript, small portion of C++, Python and html/css. Mostly python. My user ID is 7364. ||| 5th owner of Space Helmet :)
Achievements:       ['Verified', 'Novice Collector', 'XP Prodigy', '1k Forum Posts']
Stats:              ['297 Profile Views', '1826 Forum Posts', 'Last seen 40 mins ago', 'Joined Apr 27, 2019']
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...